Veri Doğrulama hücresinin yıl/sayı yazması

abnur

Altın Üye
Katılım
5 Eylül 2022
Mesajlar
78
Excel Vers. ve Dili
2021 Türkçe
Altın Üyelik Bitiş Tarihi
27-03-2026
Merhaba,

Belirlenen hücre sütununa sadece 2025/123456 sol tarafına yıl / sağ tarafına sonra sınırsız sayı yazılabilir şekilde olmasını istiyorum. Bu şeklin dışında bir yazım şekli olmamasını istiyorum.
 

mustafa1205

Altın Üye
Katılım
23 Ekim 2010
Mesajlar
1,322
Excel Vers. ve Dili
Office 2016 / 64 Bit - Türkçe
Altın Üyelik Bitiş Tarihi
18-07-2026
Aşağıdaki kodları ilgili sayfanın kod bölümüne girip deneyiniz. B Sütununa göre veriler düşünülmüştür.

Private Sub Worksheet_Change(ByVal Target As Range)
Dim rng As Range
Dim cell As Range
Dim regex As Object
Dim match As Object

' Geçerli sütunu belirleyin (Örneğin: B sütunu)
Set rng = Me.Range("B:B")

' Değişiklik yapılan hücre belirlenen sütunda mı?
If Not Intersect(Target, rng) Is Nothing Then
Application.EnableEvents = False
Set regex = CreateObject("VBScript.RegExp")
regex.Pattern = "^2025/\d+$" ' 2025/ ile başlamalı ve sonrası sadece rakam olmalı
regex.IgnoreCase = False
regex.Global = True

For Each cell In Target
If Not IsEmpty(cell.Value) Then
Set match = regex.Execute(cell.Value)
If match.Count = 0 Then
MsgBox "Hatalı giriş! Yalnızca '2025/123456' formatında giriş yapabilirsiniz.", vbCritical, "Format Hatası"
cell.ClearContents ' Geçersiz girişleri temizle
End If
End If
Next cell
Application.EnableEvents = True
End If
End Sub
 
Üst