Çözüldü Tab Tuşu sorunu

Katılım
5 Kasım 2006
Mesajlar
580
Excel Vers. ve Dili
TÜRKCE Excel 2021 32bit
Merhabalar.
Alttaki gibi kod yazdım lakin resimdeki gibi boşluk çıkıyor her comboboxta tab tuşuna basıp Textboxa geçince.
Acaba çözüm nedir?

Rich (BB code):
Private Sub ComboBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
    If KeyCode = vbKeyTab Then  'Enter
        Me.TextBox1.SetFocus
    End If
End Sub


https://www.dropbox.com/s/wok9l1bnksktd09/Enter Tusu.xlsm?dl=0
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Merhaba.
UserForm_Initialize kodunu aşağıdaki gibi değiştirin.
Rich (BB code):
Private Sub UserForm_Initialize()
    Me.TextBox1.MaxLength = 10
    Me.TextBox1.Value = Format(Date, "mm.dd.yyyy")
    Me.ComboBox1.SetFocus
End Sub
 
Katılım
5 Kasım 2006
Mesajlar
580
Excel Vers. ve Dili
TÜRKCE Excel 2021 32bit
Merhaba Ömer hocam.
Kodu deneyeceğim bugün nasipse.
Tarih sadece bir örnekti.
Başka verilerde olabilir.
Bu durumda Textbox uzunluk işe yarar mı?
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Yanlış hatırlamıyorsam forumda, Sayın Korhan AYHAN'ın hazırladığı örnek belge var idi.
Kullanıcıyı, Textbox'lara belli kriterlere göre veri (sadece sayı, sadece metin, sadece tarih gibi) yazmaya zorlayan bir uygulamaydı.
Rastlarsam ilgili konu sayfasının adresini buradan paylaşırım.

Ayrıca;
-- userformdaki nesneler arasında TAB tuşunu kullanarak belli bir sırayla gezinti yapmak için,
nesnelerin TabIndex değerleri üzerinden birşeyler yapılabilir,
-- ya da TextBox_Change koduna aşağıdaki gibi satırlar eklenebilir.
Rich (BB code):
Private Sub TextBox1_Change()
Application.OnKey "{TAB}", "ComboBox1.SetFocus"
TextBox1.Text = Replace(TextBox1.Text, Chr(9), "")
End Sub
 
Son düzenleme:
Katılım
5 Kasım 2006
Mesajlar
580
Excel Vers. ve Dili
TÜRKCE Excel 2021 32bit
Ömer hocam kusura bakmyyın biraz geç cevap yazıyorum.
İlk mesajınız tarih için sorun olmuyor,lakin textbox boş vs ise sonuç olumsuz.
İkinci kodunuzu ise test ettim olmadı sonuç olarak.
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Forumda sorulan sorulara, deneme (max.length 0 iken, textboxta tarih yokken vs) yapmadan afaki cevap yazmışlığım pek yoktur.
Eklediğiniz örnek belgeye, belirttiğim kod'u uyguladığımda bir sorunla karşılaşmamışım ki cevap yazmışım.

Verdiğim kod TextBox'ta iken TAB'a basıldığında, boşluk eklemeden Combobox'a geçilmesini sağlar, Combobox'tan TAB tuşuyla
TextBoxa geçildiğinde de BOŞLUK sorunu yaşanmadan Textbox'a geçilmesini sağlar.

Sorun yaşanan belgeyi foruma ekleyin, ben veya başka bir forum üyesi çözüm yolunda mesafe alınmasını sağlayacak öneride bulunur.
.
 
Katılım
5 Kasım 2006
Mesajlar
580
Excel Vers. ve Dili
TÜRKCE Excel 2021 32bit
Kodların tamamını ekler misiniz?
Belki ben eksik birşeyler yapmış olabilirim.
Tabii tarih olayını koda eklemeden ilgili kodu alttaki gibi yapıp.

Private Sub UserForm_Initialize()
Me.ComboBox1.SetFocus
End Sub
 
Son düzenleme:

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,190
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Alternatif;

Kod:
Private Sub ComboBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
    If KeyCode = vbKeyTab Then
        KeyCode = 0
        Me.TextBox1.SetFocus
    End If
End Sub
 
Katılım
5 Kasım 2006
Mesajlar
580
Excel Vers. ve Dili
TÜRKCE Excel 2021 32bit
Alternatif;

Kod:
Private Sub ComboBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
    If KeyCode = vbKeyTab Then
        KeyCode = 0
        Me.TextBox1.SetFocus
    End If
End Sub
Çalıştı Korhan hocam elinize sağlık. KeyCode = 0 keramet bundaymış:)
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Önerimin uygulandığı belge ekte.
Ben bir sorun göremiyorum.

Eklediğim belgeye, fareyle BURAYA tıklayarak da erişebilirsiniz.
.
 

Ekli dosyalar

Son düzenleme:

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Bir önceki cevabıma, eklediğim belgeye erişim için bağlantı adresi ekledim.
Sayfayı yenileyerek bir önceki cevabımı kontrol ediniz.
.
 
Katılım
5 Kasım 2006
Mesajlar
580
Excel Vers. ve Dili
TÜRKCE Excel 2021 32bit
Bir önceki cevabıma, eklediğim belgeye erişim için bağlantı adresi ekledim.
Sayfayı yenileyerek bir önceki cevabımı kontrol ediniz.
.
Haklısınız Ömer hocam.
Benim denemede nedense olmamıştı ne kadar denediysem :unsure:
Elinize sağlık güzel olmuş.

Korhan hocamızın eklediği KeyCode = 0 daha cazip geldi.
Application.OnKey bu kodu biraz araştırayım ilginç birşeye benziyor.

Belki senkeys yernine Application.OnKey koduyla yazıcı sayfası felan açtırabilirim.
Çünkü sendkeys Numlock ışığını kapatıyor.

Kolay gelsin.
 
Katılım
5 Kasım 2006
Mesajlar
580
Excel Vers. ve Dili
TÜRKCE Excel 2021 32bit
Application.OnKey "{TAB}", "ComboBox1.SetFocus" bunu silip TextBox1.Text = Replace(TextBox1.Text, Chr(9), "") sadece bu kodu kullanıncada sorun olmadı kod çalışmasında.
 

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

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Merhaba @Haluk Bey.
Bu dosya dikkatimden kaçmış demekki (Sayfadaki düğme ile ilgili kod ilişkilendirmesi unutulmuş galiba).
Özellikle gg/aa/yyyy ve/veya aa/gg/yyyy girişi çok işe yarar olmuş. Sağ olunuz.

Benim bahsettiğim belge/userform bu değildi. Userform gözümün önüne geliyor dikeylemesine ve daha fazla sayıda textbox'un olduğu,
herbirinde farklı veri tipinde veri girişine zorlayan kodlamalar vardı.
Yine yanlış hatırlamıyorsam diyeceğim, Sayın @Korhan Ayhan 'ın hazırladığı bir belge idi.
.
 
Katılım
5 Kasım 2006
Mesajlar
580
Excel Vers. ve Dili
TÜRKCE Excel 2021 32bit
Merhaba.
Bu tarih formatı dosyasına erişemediğim için bişey söyleyemeyeceğim.

Asıl konu Numlock ışık olayı idi :)
Sorun giderildi.Sadece doda eğer Numlock kapalıysa açma komutu ilave edilirse süper olur olmazsada önemli değil :)
 
Son düzenleme:

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Teşekkürler Sayın AYHAN. (y)

Kendisinin hazırladığı belgedeki UserForm'un arkaplan rengini bile hatırlıyorum.
Bahsettiğim Sayın @Korhan Ayhan 'ın hazırladığı belge bu idi.
UserForm olaylarında çok işinize yarayacaktır.
.
 
Üst