Textbox'a Tarih girerken, mesaj çıkması

Katılım
31 Ağustos 2005
Mesajlar
1,534
Excel Vers. ve Dili
Excel 2003 - Türkçe
Merhabalar;

Bir textbox'a tarih girerken (tarihi yazdıktan sonra), eğer girdiğimiz tarih, bugünkü tarihten sonra ise "BUGÜNDEN SONRAKİ TARİHİ GİREMEZSİNİZ" şeklinde uyarı vererek, yeniden doğru tarihi girmemiz için boşalması ve tarih formatı için nasıl kod gereklidir.

Şimdiden Teşekkürler....
 

Kemal Demir

Özel Üye
Katılım
29 Temmuz 2004
Mesajlar
2,108
Sn.kucuksengun

Çalışmada Tarih Bugune Eşit ise Tarih Doğru Diyor.

Değilse Yanlıs tarıh deyip textbox1 Değerini siliyor.


Küçük Örnek Bir dosya hazırladım inceleyiniz.Umarım işinizi Görür.


Not:Dosyayı ekledıkten Sonra Gördüm bunu CommandButton ile değilde

içerideki kodları bunun içerisinede yazabilirsiniz.
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)

End Sub
 
Katılım
31 Ağustos 2005
Mesajlar
1,534
Excel Vers. ve Dili
Excel 2003 - Türkçe
Sn Rakkas;

İlgine teşekkür.
Fakat ekteki hatayı veriyor.

Bir de buton olmadan, yazıldığı anda MESAJI verebilir mi?...
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,591
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Selamlar,

Peki tarih bugünden önce girilirse bir işlem yapılacakmı? Yani mesajı sadece bugünden büyük bir tarih girilincemi verecek?
 
Katılım
31 Ağustos 2005
Mesajlar
1,534
Excel Vers. ve Dili
Excel 2003 - Türkçe
Evet. Tarih bugünden önce ise, normal olarak yazacak.
Şayet bugünden sonra ise uyarı mesajı verecek ve textbox'a yazmayacak.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,591
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Selamlar,

O zaman aşağıdaki kod işinizi görür.

Kod:
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If IsDate(TextBox1) = False Then
MsgBox "HATALI TARİH GİRİŞİ YAPTINIZ. LÜTFEN KONTROL EDİNİZ.", vbCritical
Cancel = True
TextBox1 = ""
ElseIf CDate(TextBox1) > Date Then
MsgBox "BUGÜNDEN SONRAKİ TARİHİ GİREMEZSİNİZ.", vbCritical
Cancel = True
TextBox1 = ""
Else
TextBox1 = Format(TextBox1, "dd.mm.yyyy")
Cancel = False
End If
End Sub
Edit : Koda hata kontrolüde ekledim.
 
Katılım
19 Ocak 2005
Mesajlar
940
Excel Vers. ve Dili
İŞ : Microsoft Office Excel 2003
EV : Microsoft Office Excel 2003
ben denedim; mesela 20.04.2006 şeklinde 1. text e girip yazdım ardından 2. text e geçtiğimde herhangi bir mesaj vermedi.
 

Kemal Demir

Özel Üye
Katılım
29 Temmuz 2004
Mesajlar
2,108
Rakkas' Alıntı:
Sn.kucuksengun

Not:Dosyayı ekledıkten Sonra Gördüm bunu CommandButton ile değilde

içerideki kodları bunun içerisinede yazabilirsiniz.
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)

End Sub
Gerçi Sn.costControl size Cevap vermiş.Ama Zannederm Yaptıgım Calısmada Problem Çıkmaması Lazım.
Neyse Önmeli Olan Sizin Sorunuzun Halldelmesidir.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,591
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Selamlar,

Sn. ocamsul sanırım aşağıdaki kısmı atladınız.

Evet. Tarih bugünden önce ise, normal olarak yazacak.
Şayet bugünden sonra ise uyarı mesajı verecek ve textbox'a yazmayacak.
 
Katılım
19 Ocak 2005
Mesajlar
940
Excel Vers. ve Dili
İŞ : Microsoft Office Excel 2003
EV : Microsoft Office Excel 2003
Sn: COST_CONTROL

evet iyi okumamışım. haklısınız.
 
Katılım
31 Ağustos 2005
Mesajlar
1,534
Excel Vers. ve Dili
Excel 2003 - Türkçe
Sayın Rakkas;

İlginiz, yardımcı olma isteğiniz ve paylaşımcılığınız yeter. :eek:k::
 
Üst