USERFORM'DA TEXTBOX İÇİNDEKİ DEĞERİ SAYFAYA KAYIT YAPMA.

Katılım
22 Aralık 2023
Mesajlar
29
Excel Vers. ve Dili
ofis 365
Değerli excel üstatlarım,

textbox1.value=100.1

Üstteki textbox1 değerini worksheets("sayfa1").range("a1")=textbox1.value kodu ile sayfanın a1 hücresine kaydediyorum ama 100,1 olarak kaydediyor.

Noktayı virgüle çeviriyor. Text içindeki değer ile aynı değer ile a1 hücresine hangi kod ile kaydedebilirim?
 
Katılım
22 Aralık 2023
Mesajlar
29
Excel Vers. ve Dili
ofis 365
Nedir bu kadar acil olan...
Hocam günlerdir bunu çözmeye uğraşıyorum. Bir Muhasebe programı yapmaya çalışıyorum, bu hesap kodlarını otomatik satır açıp otomatik kayıt yaptırmak için textbox içindeki değer 100.1.1 olduğunda sorun olmuyor aynı şekilde kayıt yapıyor ama 100.1 olduğunda virgüle çeviriyor.

Acil olan günlerdir basit olduğunu düşündüğüm ama çözemediğim bu konu yüzenden vakit kaybetmem ve ilerleyememem.
 

Erkan Akayay

Altın Üye
Katılım
8 Aralık 2006
Mesajlar
405
Excel Vers. ve Dili
Ofis 365 TR 64 Bit
Altın Üyelik Bitiş Tarihi
21-11-2028
Bizde sandıkki sayıdaki noktanın başka yerde randevusu varmış. Oraya yetişecekmiş. Hücreye yerleşip hemen ayrılacakmış.
Tetxbox format konusu hakkında burada binlerce mesaj vardır.
Ben 18 senedir makroyla ilgileniyorum. Bu soruyu tüm platformlarda milyonuncu kez görmüşümdür.
 
Katılım
22 Aralık 2023
Mesajlar
29
Excel Vers. ve Dili
ofis 365
Bizde sandıkki sayıdaki noktanın başka yerde randevusu varmış. Oraya yetişecekmiş. Hücreye yerleşip hemen ayrılacakmış.
Tetxbox format konusu hakkında burada binlerce mesaj vardır.
Ben 18 senedir makroyla ilgileniyorum. Bu soruyu tüm platformlarda milyonuncu kez görmüşümdür.
Erkan bey size göre basit olabilir. Araştırdım ama çözemedim. Yardım olacaksanız olun, olmayacaksanız üst perdeden konuşmaya gerek yok.
 

Erkan Akayay

Altın Üye
Katılım
8 Aralık 2006
Mesajlar
405
Excel Vers. ve Dili
Ofis 365 TR 64 Bit
Altın Üyelik Bitiş Tarihi
21-11-2028
Yardımcı oluruz tabiki. Yardımcı olmak için buradayız. Forumlarda genel bazı kurallar vardır. Acil vs gibi ibarelerden hoşlanılmaz.
Sizin sayı bir kodmu, yoksa gerçekten sayımı?
Textboxttaki hiç bir şey sayı değildir. Türkçeye çevirince metin kutusu demek. Oradaki her şey bir metindir. Sayı bile girseniz.
Sizin sorununuz Türkçe bölgesel ayarlar.
Exceliniz ondalıklı sayıyı , ayırmaya göre ayarlı geliyor.
Sayı ise excel ayarlarını değiştirmeniz gerekecek.
Sayı değilse metin olarak göndermek gerekecek.
Sayımı, yoksa başka bir şeymi?
Ona göre çözüm bulalım.
 
Katılım
22 Aralık 2023
Mesajlar
29
Excel Vers. ve Dili
ofis 365
Yardımcı oluruz tabiki. Yardımcı olmak için buradayız. Forumlarda genel bazı kurallar vardır. Acil vs gibi ibarelerden hoşlanılmaz.
Sizin sayı bir kodmu, yoksa gerçekten sayımı?
Textboxttaki hiç bir şey sayı değildir. Türkçeye çevirince metin kutusu demek. Oradaki her şey bir metindir. Sayı bile girseniz.
Sizin sorununuz Türkçe bölgesel ayarlar.
Exceliniz ondalıklı sayıyı , ayırmaya göre ayarlı geliyor.
Sayı ise excel ayarlarını değiştirmeniz gerekecek.
Sayı değilse metin olarak göndermek gerekecek.
Sayımı, yoksa başka bir şeymi?
Ona göre çözüm bulalım.
Erkan bey, tespitiniz doğru teşekkürler, değeri kopyaladığım sayfa sütunun biçimini metin olarak değiştirdim şimdi düzeldi. Şuan noktayı virgüle çevirmeden kayıt yapıyor.
 

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
Kod:
[Sayfa1!A1] = TextBox1
.
 

Erkan Akayay

Altın Üye
Katılım
8 Aralık 2006
Mesajlar
405
Excel Vers. ve Dili
Ofis 365 TR 64 Bit
Altın Üyelik Bitiş Tarihi
21-11-2028
Kod:
[Sayfa1!A1] = TextBox1
.
Ben yukarıda roman yazıyorum. Siz 1 satır kod. Olmuyor ama. :)
Asıl sorun Tetxbox1.Value yazılması. Tetxbox1.Text yazılmasıda iş görür.
Sorun anlaşılsın diye biraz açıklama yapayım dedim.
 

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
Kısa ama, anlamlı bir kod :)

Textbox nesnesinin "default" özelliği "Text" olduğu için ".Text" diye yazmaya gerek yok. Tıpkı Range("A1").Value yerine Range("A1") yazdığımız gibi. Çünkü; "Range" sınıfının da "default" özelliği "Value"

.
 
Katılım
22 Aralık 2023
Mesajlar
29
Excel Vers. ve Dili
ofis 365
Kısa ama, anlamlı bir kod :)

Textbox nesnesinin "default" özelliği "Text" olduğu için ".Text" diye yazmaya gerek yok. Tıpkı Range("A1").Value yerine Range("A1") yazdığımız gibi. Çünkü; "Range" sınıfının da "default" özelliği "Value"

.
Kafa karışıklığını gideren asıl cevabı siz verdiniz teşekkürler Haluk bey, şimdi daha iyi anlaşıldı konu. Gerçekten kısa ve anlamlı bir kod.
 

Erkan Akayay

Altın Üye
Katılım
8 Aralık 2006
Mesajlar
405
Excel Vers. ve Dili
Ofis 365 TR 64 Bit
Altın Üyelik Bitiş Tarihi
21-11-2028
Üstad yapmayın. Tetxbox1 ile Texbox1.Text aynı olurmu? Biri sınıf, diğeri sınıfın bir özelliği.
Ha kullanılırmı, kullanılıyor. Sayfaya tüm sınıfı gönderdiğinde Tetx'ini gösteriyormu gösteriyor. Pratikte doğru, teoride yanlış.
Combobox'un default Value ama onda Text kullananları gördüm.
Amacım 1 satır kod yazıp geçmek değil.
Cevap alınıp geçilince ilgili sınıf anlaşılmıyor ve o nesne ile ilgili benzer sorular geliyor.
Sanırım bu konuda hata yapıyorum. Kopyala, yapıştır isteniyor.
 
Son düzenleme:

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
Üstad yapmayın. Tetxbox1 ile Texbox1.Text aynı olurmu? Biri sınıf, diğeri sınıfın bir özelliği.
Ha kullanılırmı, kullanılıyor. Sayfaya tüm sınıfı gönderdiğinde Tetx'ini gösteriyormu gösteriyor. Pratikte doğru, teoride yanlış.
.......
....
Erkan Bey ben değişik bir şey söylemedim ki...... VBA'nin özelliği olarak, "default" özelliği ayrıca yazmanıza gerek yok.

Kod compile edilirken, eğer bir "özellik" belirtilmemişse "default-varsayılan" özelliği alıp, onu kabul ediyor.

VBA'nin bu özelliği doğrultusunda değerlendirildiğinde sonuç olarak; hem pratikte hem de teoride doğru bir yöntem.

İlave not:
Diğer yandan; konuya ilişkin detaylı açıklamalarınızı takdirle karşılıyorum ..... orası ayrı. Elinize sağlık ....

.
 
Üst