Vba: hücrenin tarih olup olmadığını kontrol etmek için isdate nasıl kullanılır?
Belirli bir hücrenin tarih olup olmadığını kontrol etmek için VBA’daki IsDate işlevini kullanabilirsiniz.
Belirli bir hücredeki değer tarih olarak tanınırsa bu işlev True değerini döndürür.
Aksi takdirde fonksiyon False sonucunu döndürür.
Bu işlevi pratikte kullanmanın yaygın bir yolu aşağıda verilmiştir:
SubCheckDate ()
Dim i As Integer
For i = 1 To 9
If IsDate(Range(" A " & i)) = True Then
Range(" B " & i) = " Is a Date "
Else
Range(" B " & i) = " Is Not a Date "
End If
Next i
End Sub
Bu özel makro, A1:A9 aralığındaki her hücrenin bir tarih olup olmadığını kontrol edecektir.
Bir hücre bir tarihse, B1:B9 aralığında karşılık gelen hücrede “Tarihtir” ifadesi döndürülür.
Hücre tarih değilse bunun yerine “Tarih değil” ifadesi döndürülür.
Aşağıdaki örnek, bu sözdiziminin pratikte nasıl kullanılacağını gösterir.
Örnek: VBA’da IsDate nasıl kullanılır?
Excel’de aşağıdaki değer sütununa sahip olduğumuzu varsayalım:
A sütunundaki her hücrenin bir tarih olup olmadığını kontrol etmek istediğimizi varsayalım.
Bunun için aşağıdaki makroyu oluşturabiliriz:
SubCheckDate ()
Dim i As Integer
For i = 1 To 9
If IsDate(Range(" A " & i)) = True Then
Range(" B " & i) = " Is a Date "
Else
Range(" B " & i) = " Is Not a Date "
End If
Next i
End Sub
Bu makroyu çalıştırdığımızda aşağıdaki çıktıyı alıyoruz:
B Sütunu bize A sütunundaki eşleşen her hücrenin tarih olarak tanınıp tanınmayacağını söyler.
“Tarihtir” veya “Tarih değildir” ifadesini döndürmeyi seçtiğimizi, ancak If Else ifadesini kullanarak istediğinizi döndürebileceğinizi unutmayın.
Not : VBA IsDate işlevine ilişkin tüm belgeleri burada bulabilirsiniz.
Ek kaynaklar
Aşağıdaki eğitimlerde VBA’da diğer ortak görevlerin nasıl gerçekleştirileceği açıklanmaktadır:
VBA: Tarihten ay adı nasıl alınır
VBA: DateValue işlevi nasıl kullanılır?
VBA: Sayı tarihten büyük