TextBox Para formatı

muratgunay48

Altın Üye
Katılım
10 Şubat 2010
Mesajlar
1,206
Excel Vers. ve Dili
Office 365 - Türkçe (64 bit)
Altın Üyelik Bitiş Tarihi
31-01-2025
Arkadaşlar, sayın hocalarım, işyerinde kullandığım dosya olduğu için örnek dosya koyamadım.
Fotoğrafta olduğu gibi TextBox1'e rakam yazıyorum ve hesaplama yaptırıyorum.
TextBox 2 ve 3 için
Kod:
Private Sub TextBox3_Change()
    TextBox3 = ChrW(8378) & " " & Format(TextBox3, "#,##0.00")
End Sub
Kullanıyorum ama 1 için olmuyor. Örneğin 1000 yazacağım. 1 yazdığım anda Change olduğu için ₺1.00 çıkıyor ve hata veriyor. Benim yazmam bitince ve "HESAPLA" butonuna basınca₺1.000 çıkması için ne yapmalıyım.
Şimdiden teşekkür ederim.
Saygılarımla.
 

Ekli dosyalar

RBozkurt

𐱅𐰇𐰼𐰚
Altın Üye
Katılım
10 Ocak 2018
Mesajlar
724
Excel Vers. ve Dili
Microsoft Office 2024
Google Sheets
Altın Üyelik Bitiş Tarihi
19-12-2026
Butona tıklayınca çalışması daha doğru değil mi?

Kod:
Private Sub HesaplaButton_Click()
        TextBox3 = ChrW(8378) & " " & Format(TextBox3, "#,##0.00")
End Sub
Olmazsa alttakini deneyin.

Kod:
Private Sub HesaplaButton_Click()
        TextBox3.Text = ChrW(8378) & " " & Format(CDbl(TextBox3.Text), "#,##0.00")
End Sub
 
Son düzenleme:

muratgunay48

Altın Üye
Katılım
10 Şubat 2010
Mesajlar
1,206
Excel Vers. ve Dili
Office 365 - Türkçe (64 bit)
Altın Üyelik Bitiş Tarihi
31-01-2025
Butona tıklayınca çalışması daha doğru değil mi?

Kod:
Private Sub HesaplaButton_Click()
        TextBox3 = ChrW(8378) & " " & Format(TextBox3, "#,##0.00")
End Sub
Hocam öncelikle yanıtınız için teşekkür ederim. Hemen deniyorum.
 

muratgunay48

Altın Üye
Katılım
10 Şubat 2010
Mesajlar
1,206
Excel Vers. ve Dili
Office 365 - Türkçe (64 bit)
Altın Üyelik Bitiş Tarihi
31-01-2025
Butona tıklayınca çalışması daha doğru değil mi?

Kod:
Private Sub HesaplaButton_Click()
        TextBox3 = ChrW(8378) & " " & Format(TextBox3, "#,##0.00")
End Sub
Evet hocam, haklısınız.
Kod:
Private Sub CommandButton1_Click()
TextBox1 = ChrW(8378) & " " & Format(TextBox1, "#,##0.00")
TextBox2 = ChrW(8378) & " " & Format(TextBox2, "#,##0.00")
TextBox3 = ChrW(8378) & " " & Format(TextBox3, "#,##0.00")
End Sub
Şeklinde daha iyi oldu.
Çok teşekkür ederim. Var olun.
 

RBozkurt

𐱅𐰇𐰼𐰚
Altın Üye
Katılım
10 Ocak 2018
Mesajlar
724
Excel Vers. ve Dili
Microsoft Office 2024
Google Sheets
Altın Üyelik Bitiş Tarihi
19-12-2026
Eyvallah kolay gelsin.

Alternatif:

50 tane textbox varsa For i = 1 To 50 yaparsınız tümüne uygular.

Kod:
Private Sub CommandButton1_Click()
    Dim i As Integer
    Dim tb As Object
    
    For i = 1 To 3 '1,2,3 textbox için
        Set tb = Me.Controls("TextBox" & i)
        tb.Value = ChrW(8378) & " " & Format(tb.Value, "#,##0.00")
    Next i
End Sub
 

muratgunay48

Altın Üye
Katılım
10 Şubat 2010
Mesajlar
1,206
Excel Vers. ve Dili
Office 365 - Türkçe (64 bit)
Altın Üyelik Bitiş Tarihi
31-01-2025
Eyvallah kolay gelsin.

Alternatif:

50 tane textbox varsa For i = 1 To 50 yaparsınız tümüne uygular.

Kod:
Private Sub CommandButton1_Click()
    Dim i As Integer
    Dim tb As Object
   
    For i = 1 To 3 '1,2,3 textbox için
        Set tb = Me.Controls("TextBox" & i)
        tb.Value = ChrW(8378) & " " & Format(tb.Value, "#,##0.00")
    Next i
End Sub
Teşekkürler hocam.
 

muratgunay48

Altın Üye
Katılım
10 Şubat 2010
Mesajlar
1,206
Excel Vers. ve Dili
Office 365 - Türkçe (64 bit)
Altın Üyelik Bitiş Tarihi
31-01-2025
Eyvallah kolay gelsin.

Alternatif:

50 tane textbox varsa For i = 1 To 50 yaparsınız tümüne uygular.

Kod:
Private Sub CommandButton1_Click()
    Dim i As Integer
    Dim tb As Object
   
    For i = 1 To 3 '1,2,3 textbox için
        Set tb = Me.Controls("TextBox" & i)
        tb.Value = ChrW(8378) & " " & Format(tb.Value, "#,##0.00")
    Next i
End Sub

Hocam, size zahmet veriyorum ama ayrı konu açmak istemedim. Dosyayı bildiğiniz için.
Direk "HESAPLA" tıklarsam, şu debug hata bildirimi çıkıyor. TextBox1 boş iken "HESAPLA" tıklarsam "Değer girmediniz" şeklinde MsgBox nasıl çıkartabilirim.
Teşekkür ederim hocam.
 

RBozkurt

𐱅𐰇𐰼𐰚
Altın Üye
Katılım
10 Ocak 2018
Mesajlar
724
Excel Vers. ve Dili
Microsoft Office 2024
Google Sheets
Altın Üyelik Bitiş Tarihi
19-12-2026
Hocam, size zahmet veriyorum ama ayrı konu açmak istemedim. Dosyayı bildiğiniz için.
Direk "HESAPLA" tıklarsam, şu debug hata bildirimi çıkıyor. TextBox1 boş iken "HESAPLA" tıklarsam "Değer girmediniz" şeklinde MsgBox nasıl çıkartabilirim.
Teşekkür ederim hocam.
Deneyiniz,

Kod:
Private Sub CommandButton1_Click()
    If Trim(TextBox1.Value) = "" Then
        MsgBox "Değer giriniz!", vbExclamation, "Uyarı"
        Exit Sub
    End If
    TextBox1.Value = ChrW(8378) & " " & Format(TextBox1.Value, "#,##0.00")
End Sub
Kod:
Private Sub CommandButton1_Click()
    Dim i As Integer
    Dim tb As Object
 
    For i = 1 To 3 '1,2,3 textbox için
        Set tb = Me.Controls("TextBox" & i)
        If Trim(tb.Value) = "" Then
            MsgBox "Değer giriniz!", vbExclamation, "Uyarı"
            tb.SetFocus
            Exit Sub
        End If
        tb.Value = ChrW(8378) & " " & Format(tb.Value, "#,##0.00")
    Next i
End Sub
 
Son düzenleme:

walabi

Altın Üye
Katılım
22 Eylül 2012
Mesajlar
756
Excel Vers. ve Dili
excel 2010

excel 2013
Altın Üyelik Bitiş Tarihi
06-08-2025
Change değilde Exit olarak ayarlasaydınız sanırım istediğiniz gibi çalışırdı. Format gerektiren durumları change değil de exit olayına bağlamak gerekiyor sanırım.

Kod:
Private Sub TextBox3_Exit(ByVal Cancel As MSForms.ReturnBoolean)
TextBox3 = ChrW(8378) & " " & Format(TextBox3, "#,##0.00")
End Sub
 

muratgunay48

Altın Üye
Katılım
10 Şubat 2010
Mesajlar
1,206
Excel Vers. ve Dili
Office 365 - Türkçe (64 bit)
Altın Üyelik Bitiş Tarihi
31-01-2025
Deneyiniz,

Kod:
Private Sub CommandButton1_Click()
    If Trim(TextBox1.Value) = "" Then
        MsgBox "Değer giriniz!", vbExclamation, "Uyarı"
        Exit Sub
    End If
    TextBox1.Value = ChrW(8378) & " " & Format(TextBox1.Value, "#,##0.00")
End Sub
Kod:
Private Sub CommandButton1_Click()
    Dim i As Integer
    Dim tb As Object

    For i = 1 To 3 '1,2,3 textbox için
        Set tb = Me.Controls("TextBox" & i)
        If Trim(tb.Value) = "" Then
            MsgBox "Değer giriniz!", vbExclamation, "Uyarı"
            tb.SetFocus
            Exit Sub
        End If
        tb.Value = ChrW(8378) & " " & Format(tb.Value, "#,##0.00")
    Next i
End Sub
Teşekkür ederim hocam. Sayenizde oldu dosya. Var olun.
 

muratgunay48

Altın Üye
Katılım
10 Şubat 2010
Mesajlar
1,206
Excel Vers. ve Dili
Office 365 - Türkçe (64 bit)
Altın Üyelik Bitiş Tarihi
31-01-2025
Change değilde Exit olarak ayarlasaydınız sanırım istediğiniz gibi çalışırdı. Format gerektiren durumları change değil de exit olayına bağlamak gerekiyor sanırım.

Kod:
Private Sub TextBox3_Exit(ByVal Cancel As MSForms.ReturnBoolean)
TextBox3 = ChrW(8378) & " " & Format(TextBox3, "#,##0.00")
End Sub
Alternatif için teşekkür ederim hocam.
 
Üst