• DİKKAT

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

toplamda ondalık sayı problemi

  • Konbuyu başlatan Konbuyu başlatan feryat
  • Başlangıç tarihi Başlangıç tarihi
Katılım
18 Mart 2005
Mesajlar
63
Excel Vers. ve Dili
office2007 türkçe
Listboxta listelediğim ürünlerin ücretini bir textboxta toplamak istiyorum. Aşağıdaki gibi bir kod kullandım.


toplam = 0
For i = 0 To UserForm1.ListBox1.ListCount - 1
toplam = UserForm1.ListBox1.List(i, 3) + toplam
Next
UserForm1.TextBox8.Value = toplam


Ancak listedeki ondalık sayıları tamsayı olarak algılıyor. Örneğin 7,5 lira 75 lira oluyor. 17,5 olması gereken toplam 85 lira olarak çıkıyor. Problemin çöözümü ile ilgili bilgi sahibi olan varsa paylaşırsanız beni büyük bir sıkıntıdan kurtarmış olacaksınız. Zaman ayıranlara şimdiden teşekkürler.
 

Ekli dosyalar

  • Untitled.jpg
    Untitled.jpg
    93.1 KB · Görüntüleme: 6
İlgili satırı aşağıdaki ile değiştirerek deneyin.

Kod:
toplam = [COLOR=Red][B]cdbl([/B][/COLOR]UserForm1.ListBox1.List(i, 3)[COLOR=Red][B])[/B][/COLOR] + toplam
 
İlginize teşekkür ederim. Kodu denedim ancak sonuç aynı. Hala ondalık sayıyı görmüyor.
 
Bu durumda aşağıdaki gibi deneyin.

Kod:
toplam = [COLOR=Red][B]cdbl([/B][B]replace([/B][/COLOR]UserForm1.ListBox1.List(i, 3)[COLOR=Red][B],".",","))[/B][/COLOR] + toplam
 
toplam değişkeninin integer değişken olarak tanımladı iseniz veya long,ondalık sayı değil tam sayı olur.
ondalık değişkenler için değişken tanımınızı double olarak tanımlayabilirsiniz.
 
hımm. ben herhangi bir değişken tanımı yapmadım. Kullandığım kod totalde şöyle.

Private Sub CommandButton1_Click()
On Error Resume Next
sat = UserForm1.ListBox1.ListCount
If sat = 10 Then
MsgBox "Bu fişe daha fazla ürün kaydı yapılamaz"
Exit Sub
Else
UserForm1.ListBox1.AddItem
UserForm1.ListBox1.Column(0, sat) = UserForm2.TextBox1.Value
UserForm1.ListBox1.Column(1, sat) = UserForm2.TextBox4.Value
UserForm1.ListBox1.Column(2, sat) = UserForm2.TextBox7.Value
UserForm1.ListBox1.Column(3, sat) = UserForm2.TextBox6.Value
sat = sat + 1
UserForm2.Hide
End If

toplam = 0
For i = 0 To UserForm1.ListBox1.ListCount - 1
toplam = CDbl(UserForm1.ListBox1.List(i, 3)) + toplam
Next
UserForm1.TextBox8.Value = toplam

UserForm1.TextBox10.Value = "İŞLEMDE"

End Sub


bahsettiğiniz değişken tanımını nereye nasıl yaparım?
 
Geri
Üst