Herhangi bir metin kutusunda bir işlemin sürekli yapılmas

Katılım
14 Temmuz 2004
Mesajlar
17
Herhangi bir metin kutusunda bir işlemi sürekli nasıl yapabilirim? Ã?rneğin
TextBox1 ve TextBox2 deki her değişiklikte değerlerin toplanıp sürekli TextBox3 te yazılmasını nasıl sağlayabilirim???
 

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
12,406
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Aşağıdakilerin hepsi UserForm kod modulüne gidiyor;

Kod:
Private Sub TextBox1_Change()
    RefreshTxtBx
End Sub
'
Private Sub TextBox2_Change()
    RefreshTxtBx
End Sub
'
Private Sub RefreshTxtBx()
    Dim Val1 As Double, Val2 As Double
    On Error Resume Next
    Val1 = TextBox1
    Val2 = TextBox2
    On Error GoTo 0
    TextBox3 = Val1 + Val2
End Sub
 
Katılım
22 Ağustos 2004
Mesajlar
12
Herkese Selam
Bu konu daki cevap işimi tam olarak görmedi
Sorun şu;
Ben userform da çiftsayılı txt leri toplatıyorum.(txt2,txt4 gibi)ve 9 adet txt mevcut.
Bu verdiğiniz kodları;
Private Sub RefreshTxtBx()
Dim Val1 As Double, Val2 As Double
On Error Resume Next
Val1 = txt2
Val2 = txt4
On Error GoTo 0
txt1 = Val1 + Val2
End Sub

9 adet txt ye kısa yoldan nasıl uygularım.
Teşekkürler. :p
 
Katılım
7 Temmuz 2004
Mesajlar
1,141
dim i as integer
txt1 = 0
for i = 2 to 8 step 2
txt1 = txt1 + cint(me.controls("txt" & i).value)
Next i
 
Katılım
22 Ağustos 2004
Mesajlar
12
Ã?ncelikle cevap verdiğiniz için teşekkürler.
Fakat ben istediğimi anlatamadım herhalde :agla:
Benim istediğim txt2,txt4,txt6,txt8..... bu text boxlarda değişiklik olduğu taktirde toplamında herhangi bir tuşa basmaya gerek kalmadan değişmesini istiyorum.
Teşekkürler.
 
Katılım
7 Temmuz 2004
Mesajlar
1,141
çift haneli textboxlarda değişiklik olduğunu ancak TextBox Change event'ini kullanarak öğrenebilirsin. bunu zaten Sn. Raider belirtmiş.
vba'da vb'deki gibi aynı isimli objelere index (textbox1(0), textbox1(1) gibi) verip bir tek event'la tüm objeleri tetiklerini kontrol edemezsin.

Kısacası her çift sayılı txtbx'ın Change event'inde yukarıdaki prosedürü çağırmalısın.
 
Üst