Hücreden Textbox'a sayı formatında görüntüleme

Katılım
15 Ocak 2014
Mesajlar
5
Excel Vers. ve Dili
Excel 2007 TR
Merhaba,
Sadece görüntüleme amaçlı oluşturduğum bir userfrom oluşturdum. Herhangi bir veri girişi yapılmıyor. Veri girişleri excel sayfasından yapılıyor.
Veriler arasında sayılar var.

408.615,72 sayısını textbox içinde doğru görüntüleyemiyorum.
40.861.572,00 şeklinde çıkıyor. Virgülden sonraki kısmı sayının içine dahil ediyor.


Private Sub textbox1_Change()
textbox1.Text = Format( textbox1.Text, "#,###0.00")
End Sub

kullandığım kod bu.

Epey araştırdım ama bir sonuç bulamadım. Yardımcı olursanız sevinirim.


 

Seyit Tiken

Uzman
Uzman
Katılım
23 Ağustos 2005
Mesajlar
4,651
Excel Vers. ve Dili
Excel : 2010
Şu # işaretlerden birisi fazla, birini silerek deneyiniz.
 
Katılım
15 Ocak 2014
Mesajlar
5
Excel Vers. ve Dili
Excel 2007 TR
Maalesef bu da sorunu çözmedi.

Private Sub textbox1_Change()
textbox1.Text = Format( textbox1.Text, "#,##0.00")
End Sub
 
Katılım
18 Ocak 2019
Mesajlar
234
Excel Vers. ve Dili
Office 2013
Merhaba @inspector.mc

Bu şekilde, Deneyebilir misiniz.
A1 yerine hangi hücreden veri alınacaksa o hücrenin adresi yazılacak.
C#:
TextBox1=Format([A1], "#,##0.00")
 
Katılım
15 Ocak 2014
Mesajlar
5
Excel Vers. ve Dili
Excel 2007 TR
Bu şekilde istenilen şekilde gösterdi. Ancak şöyle bir problem var: textbox1 ler A:A boyunca her hücredeki sayıyı gösteriyor.
Yani a1 gibi bir adres gösterdiğim zaman a2 a3 a4... değerlerini göstermiyor.
 
Katılım
18 Ocak 2019
Mesajlar
234
Excel Vers. ve Dili
Office 2013
Textbox'ta bir alanı, yani satırlar halinde birden fazla veriyi görüntülemek pek anlamlı değil.
Listeleme için Textbox, yerine Listbox kullanılması daha doğru olur.

İlle de Textbox kullanılacaksa;
Kodda 1 ilk veri satırı, 100 son veri satırı
C#:
For satir = 1 To 100
    mtn = mtn & Format(Cells(satir, "A"), "#,##0.00") & Chr(10)
Next
TextBox1 = Mid(mtn, 1, Len(mtn) - 1)
 
Katılım
15 Ocak 2014
Mesajlar
5
Excel Vers. ve Dili
Excel 2007 TR
Benim eksik anlatımımdan kaynaklandı sanırım. Kusura bakmayın.
Aslında dediğiniz gibi bir listbox var ve excel sayfasından veriler ilk olarak listboxt görüntüleniyor.
Sonrasında listboxtan textbox ta veriler görüntüleniyor.
 
Katılım
15 Ocak 2014
Mesajlar
5
Excel Vers. ve Dili
Excel 2007 TR
For satir = 1 To 100
mtn = mtn & Format(Cells(satir, "A"), "#,##0.00") & Chr(10)
Next
TextBox1 = Mid(mtn, 1, Len(mtn) - 1)


Bu kodu tam olarak ne şekilde ve nereye yazacağımı anlayamadım. Bir kaç şey denedim ama işe yaramadı. Zaten sanırım ilk anlatımımı yanlış olduğu için bu koda da düzgün çalışmayacak.
 

Seyit Tiken

Uzman
Uzman
Katılım
23 Ağustos 2005
Mesajlar
4,651
Excel Vers. ve Dili
Excel : 2010
Bu şekilde deneyiniz, kuruş kısmını virgül girmelisiniz.
Kod:
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
TextBox1.Value = Format(TextBox1.Value, "#,##0.00")
End Sub
 
Üst