Textbox giriş maskesi

Katılım
2 Nisan 2010
Mesajlar
31
Excel Vers. ve Dili
2007 professional türkçe
Merhabalar

bi userform içinde veri girişleri için pek çok textbox kullanıyorum. bu textboxlardan bazıları tarih bazıları metin bazlı olmalı.

tarih girişi yapacaklarımda bir giriş maskesi oluşturmak istiyorum.
yani ben 20032012 diye direkt bir giriş yaptığımda textbox, girişi 20.03.2012 olarak düzenlemeli ve rakam dışında harf girişlerini kabul etmemeli

ayrıca isim ve soy isim girdiğim textboxlarda var bu textboxların verileride, isim girişinde baş harfi büyük soyisim girişinde de tüm harfleri büyük olmalı.

bu işlemleri nasıl yaptırabileceğimi bilen arkadaşlardan yardım rica ediyorum.

saygılarımla.
 
Katılım
18 Nisan 2007
Mesajlar
2,053
Excel Vers. ve Dili
Access 2019
Merhaba..

Tarih biçimlendirmesi ile ilgili amacınız için textbox denetiminin güncelleştirme sonrasında (BeforeUpdate) olay yordamı bölümünde bu yapıyı kullanabilirsiniz..:

Kod:
If Not IsNumeric(TextBoxAdi) Then
MsgBox "sadece rakam girebilirsiniz"
TextBoxAdi.Value = ""
Cancel = -1
Else
TextBoxAdi.Value = Format(CDate( _
                           Left(TextBoxAdi, 2) & "." & Mid(TextBoxAdi, 3, 2) _
                           & "." & Right(TextBoxAdi, 4)), "dd.mm.yyyy")
End If
Alttaki prosedür de diğer isteğiniz için..:


Kod:
If InStr(1, TextBoxAdi, " ") = 0 Then 'eğer soyadı girilmemişse
    TextBoxAdi.Value = StrConv(TextBoxAdi, 3)
Else
    aa = StrConv(Left(TextBoxAdi, InStr(1, TextBoxAdi, " ") - 1), 3)
    bb = StrConv(Mid(TextBoxAdi, Len(aa) + 1), 1)
    TextBoxAdi.Value = aa & bb
End If
 
Katılım
2 Nisan 2010
Mesajlar
31
Excel Vers. ve Dili
2007 professional türkçe
Çok teşekkür ederim işimi fazlasıyla gördü:)
 

ozgurpeh

Altın Üye
Katılım
30 Eylül 2007
Mesajlar
383
Excel Vers. ve Dili
2010 Türkçe
Altın Üyelik Bitiş Tarihi
04-01-2027
Merhaba..

Tarih biçimlendirmesi ile ilgili amacınız için textbox denetiminin güncelleştirme sonrasında (BeforeUpdate) olay yordamı bölümünde bu yapıyı kullanabilirsiniz..:

Kod:
If Not IsNumeric(TextBoxAdi) Then
MsgBox "sadece rakam girebilirsiniz"
TextBoxAdi.Value = ""
Cancel = -1
Else
TextBoxAdi.Value = Format(CDate( _
                           Left(TextBoxAdi, 2) & "." & Mid(TextBoxAdi, 3, 2) _
                           & "." & Right(TextBoxAdi, 4)), "dd.mm.yyyy")
End If
Alttaki prosedür de diğer isteğiniz için..:


Kod:
If InStr(1, TextBoxAdi, " ") = 0 Then 'eğer soyadı girilmemişse
    TextBoxAdi.Value = StrConv(TextBoxAdi, 3)
Else
    aa = StrConv(Left(TextBoxAdi, InStr(1, TextBoxAdi, " ") - 1), 3)
    bb = StrConv(Mid(TextBoxAdi, Len(aa) + 1), 1)
    TextBoxAdi.Value = aa & bb
End If
Bu kodları deniyorum ama hata alıyorum. kontrol edebilirmisiniz eksik hatalı olan bir durum varmı ?
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,274
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Kodları uygun olay (event) altına yazarak kullanabilirsiniz.
 
Üst