Hesaplama butonuna Macro

1Al2Ver

Altın Üye
Katılım
5 Kasım 2007
Mesajlar
4,716
Excel Vers. ve Dili
64 Bit TR - Microsoft Office 365 - Win11 Home
Altın Üyelik Bitiş Tarihi
04-01-2026
Merhabalar, küçük bir hesaplama macrosuna ihtiyacım var, Ek'li dosyada "Form" butonu ile açılan "Userform" da 3 adet textbox mevcut. A ve B ye rakam girilecek hesapla butonu, A bölü B kare hesaplayacak, burada önemli olan B girilecek rakam virgülsüzken bu rakam hesaplanırken virgüllü olacak ( Örn; 170 yazılacak ama 1,70 olarak hesaplanacak ) teşekkür ederim.
 

Mahmut Kök

Özel Üye
Katılım
14 Temmuz 2006
Mesajlar
878
Excel Vers. ve Dili
Excel 2007 - Türkçe
Merhabalar, küçük bir hesaplama macrosuna ihtiyacım var, Ek'li dosyada "Form" butonu ile açılan "Userform" da 3 adet textbox mevcut. A ve B ye rakam girilecek hesapla butonu, A bölü B kare hesaplayacak, burada önemli olan B girilecek rakam virgülsüzken bu rakam hesaplanırken virgüllü olacak ( Örn; 170 yazılacak ama 1,70 olarak hesaplanacak ) teşekkür ederim.
Aşağıdaki kod, A / (B2). Yani A'yı B'nin karesine böler.

Kod:
If Len(TextBox2) > 1 Then
TextBox2 = (Left(TextBox2, 1) & "," & Right(TextBox2, Len(TextBox2) - 1)) * 1
End If
a = TextBox1 * 1
b = (TextBox2 * 1) * (TextBox2 * 1)
c = a / b
TextBox3 = c
Aşağıdaki kod, A'yı B'ye böler ve sonucun karesini alır.

Kod:
If Len(TextBox2) > 1 Then
TextBox2 = (Left(TextBox2, 1) & "," & Right(TextBox2, Len(TextBox2) - 1)) * 1
End If
a = TextBox1 * 1
b = (TextBox2 * 1)
c = a / b
TextBox3 = c * c

Açıklama: Üzülerek ve utanarak söylüyorum ki Matematiğim pek iyi değildir. Hatam varsa kusura bakmayınız.
 

1Al2Ver

Altın Üye
Katılım
5 Kasım 2007
Mesajlar
4,716
Excel Vers. ve Dili
64 Bit TR - Microsoft Office 365 - Win11 Home
Altın Üyelik Bitiş Tarihi
04-01-2026
sayın mesleki, gecenin bu saatindeki duyarlığınız için teşekkür ederim, sağolun, denerim, olmazsa da önemli değil, formülden ziyade kısa zamanda gösterdiğiniz nezaket ve duyarlığınız benim için çok daha önemli, saygılar sunuyorum
 
Son düzenleme:

1Al2Ver

Altın Üye
Katılım
5 Kasım 2007
Mesajlar
4,716
Excel Vers. ve Dili
64 Bit TR - Microsoft Office 365 - Win11 Home
Altın Üyelik Bitiş Tarihi
04-01-2026
sayın mesleki, denedim, "hesapla" butonuna yazdım çalışıyor, çıkan sonucu virgülden sonra iki digit ( 3,89 gibi ) yapma şansımız var mı ? Olabilirse memnun olurum, tekrar teşekkür ederim.
 

1Al2Ver

Altın Üye
Katılım
5 Kasım 2007
Mesajlar
4,716
Excel Vers. ve Dili
64 Bit TR - Microsoft Office 365 - Win11 Home
Altın Üyelik Bitiş Tarihi
04-01-2026
sayın mesleki, denedim, "hesapla" butonuna yazdım çalışıyor, çıkan sonucu virgülden sonra iki digit ( 3,89 gibi ) yapma şansımız var mı ? Olabilirse memnun olurum, tekrar teşekkür ederim.
sayın mesleki, tekrar merhaba, yukardaki isteğe bir ilave,( hata düzeltmesi )
userform'da "boyunuz" hanesine sonu sıfır ilke biten ( 1.80, 1,90 gibi ) rakamlar girildiğinde sistem bunu 1,8 ve 1,9 olarak algılıyor ve BMR textbox hesaplaması yanlış oluyor, görüşmek umuduyla, saygılar.
 

Mahmut Kök

Özel Üye
Katılım
14 Temmuz 2006
Mesajlar
878
Excel Vers. ve Dili
Excel 2007 - Türkçe
İlgili satırı aşağıdaki gibi düzenleyebilirsiniz.



Kod:
TextBox2 = [COLOR=red]Format([/COLOR](Left(TextBox2, 1) & "," & Right(TextBox2, Len(TextBox2) - 1)) * 1[COLOR=red], "0.00")[/COLOR]
 

1Al2Ver

Altın Üye
Katılım
5 Kasım 2007
Mesajlar
4,716
Excel Vers. ve Dili
64 Bit TR - Microsoft Office 365 - Win11 Home
Altın Üyelik Bitiş Tarihi
04-01-2026
İlgili satırı aşağıdaki gibi düzenleyebilirsiniz.


Kod:
TextBox2 = [COLOR=red]Format([/COLOR](Left(TextBox2, 1) & "," & Right(TextBox2, Len(TextBox2) - 1)) * 1[COLOR=red], "0.00")[/COLOR]
sayın mesleki, ilginize teşekkür, kodu uyguladım ancak virgülden sonraki 2 digit ("0.00") ne yazıkki işlem yapmıyor, umarım sizi yormuyorum, saygılar
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,058
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Aşağıdaki gibi deneyin.

Kod:
TextBox2 = [COLOR=black]Format(replace(TextBox2,".",","), "0.00")[/COLOR]
 

1Al2Ver

Altın Üye
Katılım
5 Kasım 2007
Mesajlar
4,716
Excel Vers. ve Dili
64 Bit TR - Microsoft Office 365 - Win11 Home
Altın Üyelik Bitiş Tarihi
04-01-2026
Aşağıdaki gibi deneyin.

Kod:
TextBox2 = [COLOR=black]Format(replace(TextBox2,".",","), "0.00")[/COLOR]
sayın leventm, ilginize teşekkür, 2 digit çözülmedi ve "boyunuz" bölümündeki rakam 1,70 yazıldığında 170,00 şeklini aldı, sonuçta hesaplama doğru çıkıyor, ancak 2 digit gerçekleşmedi, teşekkür ederim, saygılarımla
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,058
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Hesapla butonuna aşağıdaki kodu yazın.

Kod:
Private Sub CommandButton1_Click()
TextBox3 = Replace(Round(TextBox1 / ((TextBox2 / 100) ^ 2), 2), ".", ",")
End Sub
 

1Al2Ver

Altın Üye
Katılım
5 Kasım 2007
Mesajlar
4,716
Excel Vers. ve Dili
64 Bit TR - Microsoft Office 365 - Win11 Home
Altın Üyelik Bitiş Tarihi
04-01-2026
Hesapla butonuna aşağıdaki kodu yazın.

Kod:
Private Sub CommandButton1_Click()
TextBox3 = Replace(Round(TextBox1 / ((TextBox2 / 100) ^ 2), 2), ".", ",")
End Sub
Sayın leventm, teşekkür ederim, sorun çözüldü, saygılarımla.
 
Üst