Textbox'a otomatik hesap yaptırma

sukruyilmaz1

Altın Üye
Katılım
19 Haziran 2008
Mesajlar
287
Excel Vers. ve Dili
Office 365
Merhabalar Sayın Üstadlarım.

Ekteki örnekteki userform üzerinde, Malzeme adedi ile Malzeme birim fiyatını yazdığımda, o anda toplam tutarın hesaplanıp textbox a yazmasını istiyorum. Yani Kaydet butonuna basmadan ben yazınca o anda hesaplamasını ve textbox içine yazılmasını istiyorum.

Yardımlarınız için şimdiden çok teşekkür ederim.
Saygılarımla.
 

Ekli dosyalar

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
5,801
Excel Vers. ve Dili
2019 Türkçe
Merhaba.


Aşağıdaki kodları ilave edin.

Kod:
Private Sub TextBox6_Change()
Topla
End Sub

Private Sub TextBox8_Change()
Topla
End Sub

Sub Topla()
    If IsNumeric(TextBox6.Text) And IsNumeric(TextBox8.Text) Then
        TextBox7.Text = TextBox6.Text * TextBox8.Text
    Else
        TextBox7.Text = ""
    End If
End Sub
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Merhabalar Sayın Üstadlarım.

Ekteki örnekteki userform üzerinde, Malzeme adedi ile Malzeme birim fiyatını yazdığımda, o anda toplam tutarın hesaplanıp textbox a yazmasını istiyorum. Yani Kaydet butonuna basmadan ben yazınca o anda hesaplamasını ve textbox içine yazılmasını istiyorum.

Yardımlarınız için şimdiden çok teşekkür ederim.
Saygılarımla.
Ekli dosyayı deneyiniz.:cool:

Kod:
Private Sub TextBox8_Change()
Dim adet As Double, fiyat As Double
If IsNumeric(TextBox8.Value) Then adet = TextBox8.Value
If IsNumeric(TextBox6.Value) Then fiyat = TextBox6.Value
TextBox7.Value = Format(adet * fiyat, "#,##0.00")
End Sub
Kod:
Private Sub TextBox6_Change()
Dim adet As Double, fiyat As Double
If IsNumeric(TextBox8.Value) Then adet = TextBox8.Value
If IsNumeric(TextBox6.Value) Then fiyat = TextBox6.Value
TextBox7.Value = Format(adet * fiyat, "#,##0.00")
End Sub
 

Ekli dosyalar

sukruyilmaz1

Altın Üye
Katılım
19 Haziran 2008
Mesajlar
287
Excel Vers. ve Dili
Office 365
Merhaba.


Aşağıdaki kodları ilave edin.

Kod:
Private Sub TextBox6_Change()
Topla
End Sub

Private Sub TextBox8_Change()
Topla
End Sub

Sub Topla()
    If IsNumeric(TextBox6.Text) And IsNumeric(TextBox8.Text) Then
        TextBox7.Text = TextBox6.Text * TextBox8.Text
    Else
        TextBox7.Text = ""
    End If
End Sub
ÇOK TEŞEKKÜR EDERİM
 

sukruyilmaz1

Altın Üye
Katılım
19 Haziran 2008
Mesajlar
287
Excel Vers. ve Dili
Office 365
Ekli dosyayı deneyiniz.:cool:

Kod:
Private Sub TextBox8_Change()
Dim adet As Double, fiyat As Double
If IsNumeric(TextBox8.Value) Then adet = TextBox8.Value
If IsNumeric(TextBox6.Value) Then fiyat = TextBox6.Value
TextBox7.Value = Format(adet * fiyat, "#,##0.00")
End Sub
Kod:
Private Sub TextBox6_Change()
Dim adet As Double, fiyat As Double
If IsNumeric(TextBox8.Value) Then adet = TextBox8.Value
If IsNumeric(TextBox6.Value) Then fiyat = TextBox6.Value
TextBox7.Value = Format(adet * fiyat, "#,##0.00")
End Sub
Emeğinize sağlık Sayın Orion1 Üstadım. Peki bu değerlere "TL" simgesi koyabilir miyiz?
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Emeğinize sağlık Sayın Orion1 Üstadım. Peki bu değerlere "TL" simgesi koyabilir miyiz?
Buyurun.:cool:
Kod:
Private Sub TextBox6_Change()
Dim adet As Double, fiyat As Double
If IsNumeric(TextBox8.Value) Then adet = TextBox8.Value
If IsNumeric(TextBox6.Value) Then fiyat = TextBox6.Value
TextBox7.Value = VBA.FormatCurrency(adet * fiyat, 2)
End Sub
Kod:
Private Sub TextBox8_Change()
Dim adet As Double, fiyat As Double
If IsNumeric(TextBox8.Value) Then adet = TextBox8.Value
If IsNumeric(TextBox6.Value) Then fiyat = TextBox6.Value
TextBox7.Value = VBA.FormatCurrency(adet * fiyat, 2)
End Sub
 

sukruyilmaz1

Altın Üye
Katılım
19 Haziran 2008
Mesajlar
287
Excel Vers. ve Dili
Office 365
Buyurun.:cool:
Kod:
Private Sub TextBox6_Change()
Dim adet As Double, fiyat As Double
If IsNumeric(TextBox8.Value) Then adet = TextBox8.Value
If IsNumeric(TextBox6.Value) Then fiyat = TextBox6.Value
TextBox7.Value = VBA.FormatCurrency(adet * fiyat, 2)
End Sub
Kod:
Private Sub TextBox8_Change()
Dim adet As Double, fiyat As Double
If IsNumeric(TextBox8.Value) Then adet = TextBox8.Value
If IsNumeric(TextBox6.Value) Then fiyat = TextBox6.Value
TextBox7.Value = VBA.FormatCurrency(adet * fiyat, 2)
End Sub
Çok Teşekkür Ederim Sayın Orion, Kusura bakmayın size zahmet Malzeme birim fiyatına da TL Simgesi koymak istiyorum :)
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Textbox6nın change olayına değilde afterupdate olayına yazılabilir.
Textbox6 dan çıkınca olay oluşuyor.
Kod:
Private Sub TextBox6_AfterUpdate()
TextBox6.Value = VBA.FormatCurrency(TextBox6.Value, 2)
End Sub
 

sukruyilmaz1

Altın Üye
Katılım
19 Haziran 2008
Mesajlar
287
Excel Vers. ve Dili
Office 365
Textbox6nın change olayına değilde afterupdate olayına yazılabilir.
Textbox6 dan çıkınca olay oluşuyor.
Kod:
Private Sub TextBox6_AfterUpdate()
TextBox6.Value = VBA.FormatCurrency(TextBox6.Value, 2)
End Sub
Çok teşekkür ederim Sayın Orion1...Halloldu.
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Rica ederim.
İyi çalışmalar.:cool:
 
Üst