• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

yuvarlama

Katılım
22 Mayıs 2009
Mesajlar
1,017
Excel Vers. ve Dili
Office 2003
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [D : D]) Is Nothing Then Exit Sub
On Error Resume Next
If IsNumeric(Target.Value) Then Target.Offset(0, 1).Value = Target.Value * 0.18
If IsNumeric(Target.Value) Then Target.Offset(0, 2).Value = Target.Value * 0.2
If IsNumeric(Target.Value) Then Target.Offset(0, 3).Value = Target.Value * 0.1

End Sub


Üstadlarım

D sütununa girdiğim rakama göre E sütünuna %18
D sütununa girdiğim rakama göre F sütünuna %20
D sütununa girdiğim rakama göre F sütünuna %10
oranlarını alıyorum.

Ama bazen 2,16 ya da 2,14 gibi yüzde çıkıyor.
Bunu virgülden sonra 5 den büyükse üste 5 den küçükse alta yuvarlayıp tam sayı yazdırabilir miyim?

Yardımcı Olabilir misiniz?
 
Merhaba,

Round(Target.Value * 0.18, 0)

Hesaplamalara kırmızı ilaveleri uygulayınız.

.
 
Açıkladığınız gibi, 5 den büyükleri yukarı küçükleri aşağı yuvarlar.
 
Ömer Abi Karne, Takdir, Teşekkür, Başarı ve Üstün Başarı belgeleri sayılarını hesaplama için yardım istemiştim.

12 öğrenci sayısı %18 2,16 yapıyor 3 olması gerekirken 2,16 yı 2 ye yuvarladı o yüzden dedim abi .
 
Ama bazen 2,16 ya da 2,14 gibi yüzde çıkıyor.
Bunu virgülden sonra 5 den büyükse üste 5 den küçükse alta yuvarlayıp tam sayı yazdırabilir miyim?

Ben mi yanlış yorumluyorum. Siz bu şekilde istemediniz mi?

Bu şekilde değilse daha detaylı açıklamanızı rica ederim.
 
Alternatif olarak bu olurmu

If IsNumeric(Target.Value) Then Target.Offset(0, 1).Value = WorksheetFunction.Fixed((Target.Value * 0.18), 1)
If IsNumeric(Target.Value) Then Target.Offset(0, 1).Value = WorksheetFunction.Ceiling((Target.Value * 0.18), 1)
 
Geri
Üst