textbox1 e veri girişi kısıtlama [Archive] - Excel Forum

PDA

Tüm Versiyonu Göster : textbox1 e veri girişi kısıtlama


ayemenici
13-06-2012, 13:51
hazırlamış olduğun excel programında kullandığım bir textbox kutusuna veri girişini kısıtlamak istiyorum yanlış veri geldiğinde uyarı gelsin istiyorum.
giriş için rakam ve harflerin tamamı ile sadece " - " işaretine yetki vermek istiyorum
olabilirmi !

Ömer
13-06-2012, 17:57
hazırlamış olduğun excel programında kullandığım bir textbox kutusuna veri girişini kısıtlamak istiyorum yanlış veri geldiğinde uyarı gelsin istiyorum.
giriş için rakam ve harflerin tamamı ile sadece " - " işaretine yetki vermek istiyorum
olabilirmi !

Merhaba,

Bu şekilde deneyin. Eğer TextBox1'e sayı, harf, "-" ve "," simgesi dışında veri girilirse imleç textbox dan çıkmayacaktır.

Not: Sayılarda ondalık kısmı kullanırsınız diye "," simgesini ekledim.


Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)

With CreateObject("VBScript.Regexp")

.Pattern = "^[a-zA-Z0-9\Çç\Ğğ\İi\Iı\Öö\Şş\Üü\-\,]+$"
.Global = True

If .Test(TextBox1) = False Then Cancel = True

End With

End Sub

.

ayemenici
14-06-2012, 08:20
malesef olmadı
kullandığın textbox tan enter ile çıkarak başkasına geçmek için aşağıdaki formülü kullanıyorum içinde de denedim ayrıda denedim olmadı

Private Sub TEXTBox4_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = 13 Then ComboBox4.Activate
End Sub

Ömer
14-06-2012, 08:43
Bu tür detayları sonda değil başta yazmanızı rica ederim. Enter olayına değil benim yazdığım gibi exit olayına yazın. Ayrıca enter ile istediğiniz nesneye gitmek için Tab Order ile sıralama yapabilirsiniz.

Küçük bir örnek dosya ekledim.

.

ayemenici
14-06-2012, 09:24
ömer kardeş dosyayı inceledim ancak ben usen form kullanmıyorum tab older user formda kullanılabiliyor.
excel sayfası üzerinde kullandığım textboxs ve combobox lar arasında geçiş için yukarıda verdiğim komutu kullanıyorum

Korhan Ayhan
14-06-2012, 11:04
Merhaba,

Ekteki örnek dosyayı inceleyiniz.


Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
Select Case KeyAscii
Case Asc("A") To Asc("Z")
Case Asc("a") To Asc("z")
Case 287 'Ğ
Case 286 'ğ
Case 220 'Ü
Case 252 'ü
Case 350 'Ş
Case 351 'ş
Case 304 'İ
Case 105 'i
Case 214 'Ö
Case 246 'ö
Case 199 'Ç
Case 231 'ç
Case Asc("0") To Asc("9")
Case Asc("-")
Case Else
KeyAscii = 0
End Select
End Sub

ayemenici
14-06-2012, 14:32
teşekkürler Korhan bey işime yaradı