AccessTr.neT
Yuvarlama - Baskı Önizleme

+- AccessTr.neT (https://accesstr.net)
+-- Forum: Microsoft Access (https://accesstr.net/forum-microsoft-access.html)
+--- Forum: Access Cevaplanmış Soruları (https://accesstr.net/forum-access-cevaplanmis-sorulari.html)
+--- Konu Başlığı: Yuvarlama (/konu-yuvarlama--10745.html)



Yuvarlama - mk70 - 17/03/2011

Merhabalar,

Sitede yuvarlama ile ilgili birçok konu başlığı açılmış, inceledim.
Fakat ekteki örnekte olduğu gibi;
Round(7,965;2)=7,96 çıkıyor ; 7,97 olması gerekiyor
Round(87,615;2)=87,62 çıkıyor ; bu sayıda sorun yok.

Formülü aşağıdaki şekilde değiştirerek denedim sorunu çözdüm, Ancak acaba bunun daha kolay bir yolu veya formülü var mıdır?
Round(7,965+0,055;2)-0,05=7,97
Round kodu neden bazı sayılarda yukarı yuvarlama yapıyor da bazılarında yapmıyor, anlayamadım...
(Virgülden sonraki 2. rakamın tek veya çift olması ile ilgili olabilir mi... ? Bilemedim.)
Yardımcı olursanız sevinirim.




Cvp: Yuvarlama - Hayri16 - 17/03/2011

Sayın mk70;
Çok ilginç bir durum doğrusu. Ben de denedim. Çok haklsınız. Virgülden sonraki 2. rakam eğer tek sayı ise, ondan sonra gelen rakam 5 ve yukarısında bir üst rakama tamamlıyor. Ama çift sayı ise , ondan sonra gelen rakam 5 ise bu sefer üst rakama tamamlamıyor. Formülünüz işlevsel ve şu anda benim bildiğim kadarıyla başka bir çözüm yok. Ama ustalar geliştirebilirler. Kolay gelsin.


Cvp: Yuvarlama - mk70 - 17/03/2011

İlginiz için teşekkür ederim Sayın Hayri16. Bu hesaplamalar okulumuzda çalışan hizmetlinin sigorta kesintileri ile ilgili. Bildiğiniz gibi SGK işlemlerinde 1 kuruşun bile hesabı çok önemli...


Cvp: Yuvarlama - ozanakkaya - 23/03/2011

Hesaplamalardaki hata daha önce tartışılmıştı.

=Round((32.065);2) kodu accesste 32.06 , aynı kod excelde 32.07 olarak yuvarlanıyor.

Accesste son rakam 5 ise, 5 ten önceki rakamın tek-çift durumuna göre yuvarlıyor.

Mesela
Round (12.55, 1) = 12.6
Round (12.65, 1) = 12.6
Round (12.75, 1) = 12.8

Eğer son rakam 5 ise ve siz önceki rakama bakmazsızın yukarı yuvarlamak istiyorsanız ona göre kod yazılabilir. Ama accessin normal işleyişi üstte anlattığım şekilde. Tekse yukarı, çiftse aynı.


Cvp: Yuvarlama - mk70 - 26/03/2011

Teşekkür ederim sayın sledgab,

Sorunu
Round(7,965+0,055;2)-0,05=7,97
şeklinde çözdüm...