Hücrede otomatik tarih ayıracı tanımlama

Katılım
5 Eylül 2007
Mesajlar
1,247
Excel Vers. ve Dili
ofis 2010
Altın Üyelik Bitiş Tarihi
21-07-2024
merhaba; textbox larda
Kod:
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
Texte = TextBox1.Text
Select Case Len(Texte)
Case 2, 5
Texte = Texte & "."
End Select
TextBox1.Text = Texte
Select Case Len(TextBox1.Value)
Case Is >= 10 'Tarih ayraclarla beraber 10 karakter
'TextBox2.SetFocus 'textbox2 textbox1 10. karaktere ulastiktan sonra veri girisi olursa gidecegi textboxt tur
Case Else
'TextBox2.Value = ""
End Select
End Sub
kodu ile ayıraç " . " kullanmadan tarihi gün ay ve yıl olarak yazdığımızda tarih olarak yazabiliyoruz. ayın işlemi textbox kullanmadan yani normal excel hücresi için yapmamız mümkün olabilir mi? Teşekkürler
 

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
6,167
Excel Vers. ve Dili
2019 Türkçe
Merhaba.
Excel sayfanızın adını sağ tıklatın "Kod Görüntüle" seçin açılan sayfaya aşağıdaki kodları kopyalayın.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim Tarih As String
    If Intersect(Target, Range("A1:A10")) Is Nothing Then Exit Sub
    If IsDate(Target.Value) Then Exit Sub
    If Not IsNumeric(Target.Value) Then
        MsgBox "Sadece rakam girişi yapabilirsiniz."
        Exit Sub
    ElseIf Not Len(Target.Value) = 8 Then
        MsgBox "Sadece Sekiz(8) basamaklı bir rakam girişi yapabilirsiniz." & vbLf & "Eğer ilk rakam sıfırsa lütfen en öne tırnak ""'"" işareti koyunuz."
        Exit Sub
    End If
    Tarih = DateSerial(Right(Target.Value, 4), Right(Left(Target.Value, 4), 2), Left(Target.Value, 2))
    If IsDate(Tarih) Then
        Application.EnableEvents = False
        Target = Tarih
        Application.EnableEvents = True
    End If
End Sub
1-Kodlar sadece "A1:A10" hücre aralığında çalışacak şekilde ayarlanmıştır siz kendinize göre değiştirebilirsiniz.
2-Sekiz basamaklı bir sayı girdiğinizde kodlar rakamı tarihe çevirecektir.
3-Eğer sıfır ile başlayan bir tarih giriyorsanız vaşına tırnak(') işareti koymanız gerekiyor. Örnek '01022019
Eğer tırnak işareti koymazsanız Ecel baştaki sıfırı siliyor ve geriye yedi rakam kalıyor, bu durumda kodlar çalışmaz.
 

Seyit Tiken

Uzman
Uzman
Katılım
23 Ağustos 2005
Mesajlar
4,651
Excel Vers. ve Dili
Excel : 2010
Hücre Biçimlendir'den METİN olarak ayarlanırsa tırnak işaretine gerek kalmıyor.
 

comp_wolf

Altın Üye
Katılım
15 Eylül 2012
Mesajlar
72
Excel Vers. ve Dili
2010 türkçe
Altın Üyelik Bitiş Tarihi
01-02-2025
AYNI KODU BENDE KULLANDIM EMEĞİ GEÇEN HERKESE ÇOK TEŞEKKÜR EDERİM. HÜCRE BİÇİMİNİ METİN YAPINCA DA DAHA KULLANIŞLI OLDU. PEKİ BİR ŞEY SORABİLİRMİYİM SİZLERE ?
 
Üst