Merhabalar,
Ekli örneğimde ondalıklı bir sayının tamsayıya yuvarlanması ile ilgili bir çalışma var. Örneğin sayımız 0,5 olduğunda bunu 0 olarak çeviriyor, 0,6 olduğunda 1 yapıyor. Esasen matematikte 0,5 te dahil olmak üzere bu ve bunun üzerindeki sayıları bir üste yuvarlamalı. Yani;
0,4 = 0
0,5 = 1
0,6 = 1
.
.
.
gibi. Ama dikkat ederseniz sistem bir tuhaf çalışıyor, bazı değerlerde (örneğin 1,5 girdiğimde bunu 2 yapıyor ama 108,5 girdiğimde 109 yapmıyor.)
Benim istediğim şey, matematiksel olarak olması gerekendir. Yani "nokta 5" ve üzeri her değer, girilen sayıyı bir üste yuvarlamalıdır.
Tşk.
Yuvarlama Hakkında
sayın notrino,
bahsettiğiniz talebinize yönelik olarak;
site arama sayfasında "yuvarlama" veya "round" ifadelerini yazmak sureti ile çeşitli içeriklerdeki konularda yer alan bilgileri ve örnekleri inceleyebilirsiniz.
aşağıda bunlardan biri yer almaktadır.
sorguda format kullanımı
bilginize...iyi çalışmalar,saygılar.
bahsettiğiniz talebinize yönelik olarak;
site arama sayfasında "yuvarlama" veya "round" ifadelerini yazmak sureti ile çeşitli içeriklerdeki konularda yer alan bilgileri ve örnekleri inceleyebilirsiniz.
aşağıda bunlardan biri yer almaktadır.
sorguda format kullanımı
bilginize...iyi çalışmalar,saygılar.
Modüle aşağıdaki kodu kaydet
Hesaplanmış alanda ifadeye
Tablodaki hesaplanmış alan olayında bence uzak dur.
Public Function Round(ByVal Number As Variant, NumDigits As Long, Optional UseBankersRounding As Boolean = False) As Double
Dim dblPower As Double
Dim varTemp As Variant
Dim intSgn As Integer
If Not IsNumeric(Number) Then
Err.Raise 5
End If
dblPower = 10 ^ NumDigits
intSgn = Sgn(Number)
Number = Abs(Number)
varTemp = CDec(Number) * dblPower + 0.5
If UseBankersRounding Then
If Int(varTemp) = varTemp Then
If varTemp Mod 2 = 1 Then
varTemp = varTemp - 1
End If
End If
End If
Round = intSgn * Int(varTemp) / dblPower
End Function
Hesaplanmış alanda ifadeye
round([sayı];0)
yaz.Tablodaki hesaplanmış alan olayında bence uzak dur.
Merhaba Ozan Bey,
Açıkçası bu çalışmadı. Ama aslında benim talebim de biraz şekil değiştirdi. Şöyleki, talebim sadece exceldeki gibi bir yukarı yuvarlama işlemidir. Yani girilen sayı 12 olduğunda cevap 12 olmalı, girilen sayı 12,1 - 12,2 - 12,3 .... 12,9 olduğunda cevap 13 olmalıdır. Aynen exceldeki gibi..Bu nasıl olacak Accesste? round[sayı,0] fonksiyonu bu işe yaramıyor...
Açıkçası bu çalışmadı. Ama aslında benim talebim de biraz şekil değiştirdi. Şöyleki, talebim sadece exceldeki gibi bir yukarı yuvarlama işlemidir. Yani girilen sayı 12 olduğunda cevap 12 olmalı, girilen sayı 12,1 - 12,2 - 12,3 .... 12,9 olduğunda cevap 13 olmalıdır. Aynen exceldeki gibi..Bu nasıl olacak Accesste? round[sayı,0] fonksiyonu bu işe yaramıyor...
inceleyip olumlu/olumsuz bildirimde bulununuz.
Tamamdır Ozan Bey,
Aradığım buydu. Teşekkürler..
Aradığım buydu. Teşekkürler..
Konuyu Okuyanlar: 1 Ziyaretçi