• DİKKAT

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

textbox'ı hesap makinası gibi kullanabilirmiyiz.

  • Konbuyu başlatan Konbuyu başlatan hikmet
  • Başlangıç tarihi Başlangıç tarihi
Katılım
25 Ağustos 2005
Mesajlar
569
Excel Vers. ve Dili
Excel 2003 Tr
merhaba sn.hocalarım ve arkadaşlarım;
userform üzerindeki herhangi bir textbox'ı sayfadaki hücrelerde "+" işareti ile hesaplattırdığımız gibi hesap makinası olarak da kullanabilirmiyiz. veya başka bir nesne varmıdır üzerinde hesap yapıp sayfaya kaydettirebileceğimiz. userformun üzerine hesap makinası eklemek tamam ama benim aradığım textbox veya başka bir nese üzerinde doğrudan hesaplayıp çıkan sonucu sayfadaki hücreye kaydettirmek. bu mümkünmüdür.
 
Böyle bir işlem için hazır nesneye ne gerek var, elinizde VBA gibi bir programlama dili mevcut iken bunu kendiniz rahatlıkla yapabilirsiniz diye düşünüyorum. Örneğin aşağıdaki kodu textbox1 e yazarsanız, "=" sembolünü yazdığınız anda işlemin sonucunu textboxa yazacaktır.

Kod:
Private Sub TextBox1_Change()
If Right(TextBox1, 1) = "=" Then TextBox1 = Evaluate("=" & Replace(TextBox1, "=", ""))
End Sub

Örneğin; textbox1e 1+5*6-1 yazdıktan sonra "=" yazın.
 
hocam teşekkür ederim ellerinize sağlık. hedefi 12 den vuran cevabınız için teşekkür ederim.
 
peki

hocam peki bunu ("=")'i elle değil de bir butona atasak olur mu mesela
private sub commandbutton1_click ( )
textbox1.text = "=" gibi...ve hesaplamayı ona göre yapsa
 
Bunun için butona aşağıdaki kodu yazmanız yeterlidir.

Kod:
TextBox1 = Evaluate("=" & TextBox1)
 
ilk sorum şu şekilde:
"=" işaretina bastığımız zaman sonucu buluyoruz aynı zamanda "enter" tuşuna bastığımız zamanda sonucu bulmak istiyorum
Kod:
Private Sub TextBox1_Change()
If Right(TextBox1, 1) = "=" or "keycode=13" Then TextBox1 = Evaluate("=" & Replace(TextBox1, "=", ""))
End Sub
şeklinde denedim olmadı
bir diğer sorum ise:
bunu excel'de değilde visual basic programında nasıl yapabiliriz
Kod:
Private Sub TextBox1_Change()
If Right(Text1, 1) = "=" Then Text1 = Evaluate("=" & Replace(Text1, "=", ""))
End Sub
şeklinde yazdığımız zaman olmuyor nasıl bir kod kullanmalıyız.
teşekkürler
 
Son düzenleme:
calc

arkadaşım ben bu kodla bir hesap makinesi yaptım bakalım beğenecek misin?
 
Son düzenleme:
Selamlar,
Sayın Hocam ondalık sayılar için yapabilirmiyiz. Bir de "=" deyince sonucu diğer bir TextBoxa yazdırabilirmiyiz.
 
Selamlar,
Sayın Hocam ondalık sayılar için yapabilirmiyiz. Bir de "=" deyince sonucu diğer bir TextBoxa yazdırabilirmiyiz.

Aşağıdaki gibi istediğiniz sonucu elde edebilirsiniz.

Kod:
Private Sub TextBox1_Change()
If Right(TextBox1, 1) = "=" Then TextBox2 = Replace(Evaluate("=" & Replace(Replace(TextBox1, "=", ""), ",", ".")), ".", ",")
End Sub
 
Teşekkür ederim Hocam.
 
Geri
Üst