• DİKKAT

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

TextBoxlarda Toplama Hatası

Katılım
26 Aralık 2008
Mesajlar
1,145
Excel Vers. ve Dili
EXCEL 2016 TÜRKÇE
Merhaba arkadaşlar aşağıdaki kodlarda TextBox4,5,6,7 de yazdığım rakamları TextBox8 e toplattırıyorum TextBox4 1.500 yazıyorum doğru diğerlerine sadece 1 yazdığımda 1000 olarak topluyor yani toplam 1501 olması gerekirken 2500 diye toplam alıyor bir yardımcı olursanız çok sevineceğim.
İyi çalışmalar.


Private Sub TextBox5_Exit(ByVal Cancel As MSForms.ReturnBoolean)
TextBox5 = Format(Val(TextBox5), "#,##0")
TextBox34 = Format(100 + (TextBox5 / (TextBox2 / 100) - 100), "%0")
End Sub
Private Sub TextBox6_Exit(ByVal Cancel As MSForms.ReturnBoolean)
TextBox6 = Format(Val(TextBox6), "#,##0")
TextBox35 = Format(100 + (TextBox6 / (TextBox2 / 100) - 100), "%0")
End Sub
Private Sub TextBox7_Exit(ByVal Cancel As MSForms.ReturnBoolean)
TextBox7 = Format(Val(TextBox7), "#,##0")
TextBox36 = Format(100 + (TextBox7 / (TextBox2 / 100) - 100), "%0")
End Sub
Private Sub TextBox8_Exit(ByVal Cancel As MSForms.ReturnBoolean)
TextBox8 = Format(Val(TextBox8), "#,##0")
TextBox37 = Format(100 + (TextBox8 / (TextBox2 / 100) - 100), "%0")
End Sub


Private Sub TextBox4_Change()
TextBox8.Value = (Val(TextBox4.Text)) + (Val(TextBox5.Text)) + (Val(TextBox6.Text)) + (Val(TextBox7.Text))
End Sub
Private Sub TextBox5_Change()
TextBox8.Value = (Val(TextBox4.Text)) + (Val(TextBox5.Text)) + (Val(TextBox6.Text)) + (Val(TextBox7.Text))
End Sub
Private Sub TextBox6_Change()
TextBox8.Value = (Val(TextBox4.Text)) + (Val(TextBox5.Text)) + (Val(TextBox6.Text)) + (Val(TextBox7.Text))
End Sub
Private Sub TextBox7_Change()
TextBox8.Value = (Val(TextBox4.Text)) + (Val(TextBox5.Text)) + (Val(TextBox6.Text)) + (Val(TextBox7.Text))
End Sub
 
Bir sorun görünmüyor...

TextBox4' 1500 yazıp TextBox5-6-7'ye de 1 yazdığınızda neden 1501 yazması gerekiyor ?
 

Ekli dosyalar

  • adsız.jpg
    adsız.jpg
    8.1 KB · Görüntüleme: 6
Anlatamadım galiba ilk sıradaki kodlardanda anlaşılacağı gibi tektebox lara rakamları nktalı yazdırmasını istedim 1500 şeklinde yazılırsa hata vermiyor zaten ama ben textboxlarda rakamları ayarç kullanarak yazmasını istediğim için örneğin 1500 değilde 1.500 diye yazıldığında hata veriyor sadece 1 ide 1000 görüyor oysa ben 1 yazmıştım.
 
Dosyanızı görelim lütfen.
Deneme yapmak için 37 tane TextBox oluşturmak istemiyorum...
 
Murat OSMA

Günaydın Dosya 5 nolu mesajdadır
 
Murat OSMA

merhaba Murat OSMA bey eklediğim dosyaya cevap vermedizin
 
buyurun dosya ektedir.

Merhaba
Bu dosyanıza göre çözüm.
Userform'un kod bölümünü temizleyin ve bu kodu kopyalayıp deneyin.
Kod:
'Konu       :   Textboxları Üst Üste Topla
'Mail       :   m.batu.1967@gmail.com
'Msn        :   m.batu.1967@hotmail.com.tr
'Coder By   :   asi_kral_1967
Dim t1 As Currency, t2 As Currency, _
t3 As Currency, t4 As Currency
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1 <> Empty And CDbl(TextBox1.Value) <> t1 Then
t1 = TextBox1.Value
t4 = t4 + t1
TextBox4.Value = t4
TextBox1 = Format(TextBox1, "#,##0.00")
TextBox4 = Format(TextBox4, "#,##0.00")
Range("A1").Value = CDbl(TextBox4.Value)
End If
End Sub
Private Sub TextBox2_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox2 <> Empty And CDbl(TextBox2.Value) <> t2 Then
t2 = TextBox2.Value
t4 = t4 + t2
TextBox4.Value = t4
TextBox2 = Format(TextBox2, "#,##0.00")
TextBox4 = Format(TextBox4, "#,##0.00")
Range("A1").Value = CDbl(TextBox4.Value)
End If
End Sub
Private Sub TextBox3_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox3 <> Empty And CDbl(TextBox3.Value) <> t3 Then
t3 = TextBox3.Value
t4 = t4 + t3
TextBox4.Value = t4
TextBox3 = Format(TextBox3, "#,##0.00")
TextBox4 = Format(TextBox4, "#,##0.00")
Range("A1").Value = CDbl(TextBox4.Value)
End If
End Sub
Dosyanız Ekte.
 

Ekli dosyalar

Son düzenleme:
asi_kral_1967

teşekkür ederim asi_kral_1967 bey virgülden sonrasını göstermek istemediğim zaman 1000 yazıp kayıt yaptığımda excel sayfasına 1 diye kayıt yapıyor. buna da bir yardımcı olursanız çok sevineceğim örneğin bu koddaki sondan 2 sıfırı sildiğimde bu hatayı veriyor TextBox2 = Format(TextBox2, "#,##0.00")
 
teşekkür ederim asi_kral_1967 bey virgülden sonrasını göstermek istemediğim zaman 1000 yazıp kayıt yaptığımda excel sayfasına 1 diye kayıt yapıyor. buna da bir yardımcı olursanız çok sevineceğim örneğin bu koddaki sondan 2 sıfırı sildiğimde bu hatayı veriyor TextBox2 = Format(TextBox2, "#,##0.00")

Üstteki mesajımı güncelledim.
A1 hücresine Textbox4'deki sonucu yazıyor.
 
asi_kral_1967

rakamı o şekil yazdığımızda zaten hata vermiyor rakam noktalı yazdırıldığında hata veriyor benim istediğim rakamı noktalı yazdığımızda excele o şekil kaydettin
 
rakamı o şekil yazdığımızda zaten hata vermiyor rakam noktalı yazdırıldığında hata veriyor benim istediğim rakamı noktalı yazdığımızda excele o şekil kaydettin

Üstteki kodu tekrar güncelledim.
Dosyada güncellendi.
 
asi_kral_1967 bey

Merhaba asi_kral_1967 bey 8 nolu mesajdaki dosyada textboklara rakam yazıp topluyor fakan geri donup rakamları değiştirdiğimizde önceki rakamların üzerine ilave ederek topluyor bir bakarsanız çok sevineceğim kal sağlıcakla.
 
Merhaba asi_kral_1967 bey 8 nolu mesajdaki dosyada textboklara rakam yazıp topluyor fakan geri donup rakamları değiştirdiğimizde önceki rakamların üzerine ilave ederek topluyor bir bakarsanız çok sevineceğim kal sağlıcakla.

Üstteki kodu ve dosyayı tekrardan güncelledim.
Not : Tekrarda hesaplamayı aynı rakam olduğunda yapmaz. Buna dikkat edersiniz. En son girdiğiniz rakam ile aynı rakamı girerseniz üst üste toplamaz.
 
asi_kral_1967

tekrar merhaba asi_kral_1967 bey galiba anlatamadım örneğin textbox1 e rakam yazdım enterle texbox2 indim fark ettimki textbok1 e yanlış rakam yazdım düzeltme yaptığımda eski rakamın üzerine topluyor.
 
Geri
Üst