Arkadaslar excelde yukarı yuvarlama formulü vardı.bana lazım olan visual basic de sayı 1.5, 2.5, 3.5, 4.5 olursa otomatik olarak "1.5 ise 2" , "2.5 ise 3" olmasını istiyorum yani virgülden sonraki ilk rakam 5 ise onu hemen bi üst rakama çıkarmak ıstıyorum.
bi örnek daha verim açıklayıcı olsun;
text1 e 2 girildi text2 e 3 girildi text3 de sonuc gosterılcek fakat 2.5 deilde 3 gösterılcek.
Not:Uğraştığım projede her zaman virgülden bi sonrakı sayı 5 dir.
Round(1.5, 0)
1.5 burda senin değerin. 0 ise virgülden sonraki digit sayısını ifade eder.
bu sekilde yaptım fakat olmadı
Dim a, b As Integer Private Sub Command1_Click() a = Int(Text1.Text) / 2 b = Round(a, 0) Label1.Caption = Str(b) End Sub
3 / 2 = 2 veriyor > Doğru 5 / 2 = 2 veriyor > Yanlış 7 / 2 = 4 veriyor > Doğru 9 / 2 = 4 veriyor > Yanlış
Bazılarını doğru verıyor bazılarını yanlış :( nasıl kullanılcağı hakkında bi örnek verırsenız cok güzel olucak.
round komutu verilen sayıyı en yakın tam sayıya yuvarlar.ama dediğin gibi sonuçlar verebiliyor. en yakın küçük tam sayıya yuvarlasın dersen round(a-0.01,0) gibi bir sağlama yapabilirsin
quote:
Orijinalden alıntı: peacelick
round komutu verilen sayıyı en yakın tam sayıya yuvarlar.ama dediğin gibi sonuçlar verebiliyor. en yakın küçük tam sayıya yuvarlasın dersen round(a-0.01,0) gibi bir sağlama yapabilirsin
evet verdğinizi denedım istedigimin tam tersi oldu.hala aradıgımı bulamadm bunun bi cozumu yok mu yaw :(
- 0.1 yerine +0.1 koyacaksın işte işlem sonucu 2.5 geldi.bu hem 2ye hem de 3e aynı uzaklıkta o yüzden program en yakına yuvarlayamıyor. bir sayı eklersek yukardaki sayıya yaklaşmış oluyor.örneğin 2.5+0.1=2.6 3e yakın 2ye uzak.3e yuvarlıyor 2.5-0.1=2.4 2ye yakın 3e uzak.2ye yuvarlıyor
Heh simdi oldu be kardeşim çok tesekkur ederım engin bilgilerin için