YIL VE AY (2000/01)

Katılım
24 Mayıs 2005
Mesajlar
462
Excel Vers. ve Dili
Excel 2003 Türkçe
Günaydın arkadaşlar,

Textbox1`den enter ile çıkınca 2000/01,2000/02..... ve 2010/12`ye kadar olan ay ve yılların doğru yazılmasını nasıl sağlayabiliriz. Yani 1999/01 olarak giriş yapılırsa uyarı versin mutlaka bizim belirlediğimiz yıl ve ayları tanısın.

Bunu yapmak mümkünmüdür. Saygılarımla, :hey:
 
Katılım
28 Temmuz 2004
Mesajlar
275
Günaydın Sayın Ongun,

Textbox yerine iki tane combobox ile birinden yılı diğerinden ayı seçtirsek işinizi görür mü acaba?
 
Katılım
24 Mayıs 2005
Mesajlar
462
Excel Vers. ve Dili
Excel 2003 Türkçe
Textbox yerine iki tane combobox ile birinden yılı diğerinden ayı seçtirsek işinizi görür mü acaba?[/quote]

Öncelikle ilginiz için çok teşekkürler. Combobox ile bunu yapabiliyorum ancak elimde daha önce yapmış olduğum bir proğram var. Bütün her şey bu şekilde ayarlanmış, yani kodlarda değişiklikler yapmam lazım.

oysa textbox`dan enter yapınca bir nevi oto kontrol sağlatmak istiyorum. Amacım kullanıcıyı yazması gereken yıllara ve aylara zorlamak.

Örneğin 1999/12, 2011/06 veya 1999/02 gibi yazılmasını engellemek istiyorum.

Dediğiniz gibi combobox`da yapsam çok kolay olacak ama malesef birbiri ile bağlantılı çok fazla kod var. Saygılarımla. :hey:
 
Katılım
17 Ağustos 2004
Mesajlar
222
Excel Vers. ve Dili
Ofiste Excel 2000 Türkçe
Evde Excel 2003 Türkçe
Merhaba
Yıl/ Ay girdiğinize göre Başka TextBoxa ilk 4 rakamı alıp kontrol ettirebilirsiniz.
Ben bir ön çalışma yaptım.İyiçalışmalar.
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
TextBox2.Value = Mid(TextBox1, 1, 4)
If TextBox2.Text < 2000 Then
TextBox2 = ""
TextBox1 = ""
ElseIf TextBox2.Text > 2010 Then
TextBox2 = ""
TextBox1 = ""
Exit Sub
End If
End Sub
 
Katılım
24 Mayıs 2005
Mesajlar
462
Excel Vers. ve Dili
Excel 2003 Türkçe
Sayın class37, ilginiz için çok teşekkürler. Elinize sağlık

Ancak, benim istediğim tam olarak bu değil, 2000/01 den 2010/12 arasındaki yıl ve ayların textbox`a doğru girilmiş olmasını sağlamak.
yani
2000/01,2000/02,2000/03,2000/04,2000/05,2000/06,2000/07,2000/08,2000/09,2000/10,2000/11,2000/12
bu böyle yıllar itibariyle 2010/12 ye kadar devam edecek. Bu arada yıl ve ay girişi yapılmasına izin veren, ancak bunların dışında olursa giriş izni vermeyen uyarı veren (hatalı girdiniz gibi) bir şey istiyorum.

Lütfen yardımcı olun. Saygılarımla
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Aşağıdaki gibi deneyin.

[vb:1:ad1dd3ad6a]Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If Year(TextBox1) < 2000 Or Year(TextBox1) > 2010 Then
MsgBox "TARİH GİRİŞİ HATALIDIR"
TextBox1 = ""
End If
End Sub
[/vb:1:ad1dd3ad6a]
 
Katılım
24 Mayıs 2005
Mesajlar
462
Excel Vers. ve Dili
Excel 2003 Türkçe
Sayın leventm, elinize sağlık. Çok teşekkür ederim.

kodlarınızı denedim ama 2000/13 olarak giriş yapınca "Type Mismatch" hatası verdi. Aslında "TARİH GİRİŞİ HATALIDIR" uyarısı vermesi lazım. Acaba nedeni ne olabilir. Saygılarımla :kafa: :kafa: :kafa:
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Çünkü 13.ay yoktur, bu durumda yazdığınız tarih olarak algılanmayacaktır ve kod içindeki year() fonksiyonu hata verecektir.
 
Katılım
24 Mayıs 2005
Mesajlar
462
Excel Vers. ve Dili
Excel 2003 Türkçe
Haklısınız. Ama kullanıcı yanlışlıkla 12 yerine 13 olarak giriş yaparsa hata vermemesi için ne yapabiliriz. Saygılarımla.
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Aşağıdaki gibi deneyin.

[vb:1:9c30f366b7]Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If IsDate(TextBox1) = False Then GoTo 10
If Year(TextBox1) < 2000 Or Year(TextBox1) > 2010 Then GoTo 10
Exit Sub
10 MsgBox "TARİH GİRİŞİ HATALIDIR"
TextBox1 = ""
End Sub
[/vb:1:9c30f366b7]
 
Katılım
24 Mayıs 2005
Mesajlar
462
Excel Vers. ve Dili
Excel 2003 Türkçe
Sayın leventm, çok çok teşekkür ederim. Ellerinize yüreğinize sağlık. Her zaman sağlık ve mutluluk içinde olun. Saygılarımla :mutlu:
 
Üst