Vba'da bir tarihten günler nasıl çıkarılır (örnekle)
Bir tarihten belirli sayıda gün çıkarmak için VBA’da DateAdd işlevini negatif bir sayıyla kullanabilirsiniz.
Bu işlevi pratikte kullanmanın yaygın bir yolu aşağıda verilmiştir:
Sub SubtractDays()
Dim i As Integer
For i = 2 To 10
Range(" B " & i) = DateAdd(" d ", -4, Range(" A " & i))
Next i
End Sub
Bu özel makro, A2:A10 aralığındaki her tarihten dört gün çıkaracak ve B2:B10 aralığındaki yeni tarihleri görüntüleyecektir.
DateAdd işlevindeki “d” bağımsız değişkeninin, başka bir zaman birimi yerine günleri tarihlerden çıkarmak istediğimizi belirttiğini unutmayın.
DateAdd işlevinde kullanabileceğiniz birimlerin tam listesi için VBA dokümantasyon sayfasına bakın.
Aşağıdaki örnek, bu sözdiziminin pratikte nasıl kullanılacağını gösterir.
Örnek: VBA’da tarihten günleri çıkarın
Excel’de aşağıdaki tarih listesine sahip olduğumuzu varsayalım:
Her tarihten dört gün çıkarmak ve yeni tarihleri B sütununda görüntülemek istediğimizi varsayalım.
Bunun için aşağıdaki makroyu oluşturabiliriz:
Sub SubtractDays()
Dim i As Integer
For i = 2 To 10
Range(" B " & i) = DateAdd(" d ", -4, Range(" A " & i))
Next i
End Sub
Bu makroyu çalıştırdığımızda aşağıdaki çıktıyı alıyoruz:
B sütununun, A sütunundaki tarihlerin her birini dört gün çıkarılmış şekilde içerdiğini unutmayın.
Her tarihten farklı sayıda gün çıkarmak için DateAdd işlevindeki sayısal değeri değiştirmekten çekinmeyin.
Not : VBA’daki DateAdd işlevinin tam belgelerini 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’da tarihler nasıl karşılaştırılır
VBA’da dizeyi tarihe dönüştürme
VBA’da iki tarih arasındaki günler nasıl hesaplanır