Vba: 2 つの日付の間の日数を計算する方法
VBA で次の基本構文を使用して、2 つの日付の間の日数を計算できます。
SubDaysBetweenDates ()
Dim i As Integer
For i = 2 To 7
Range(" C " & i) = DateDiff(" D ", Range(" A " & i), Range(" B " & i))
Next i
End Sub
この特定の例では、範囲A2:A7およびB2:B7の対応するセルの日付間の日数を計算し、結果を範囲C2:C7に返します。
DateDiff関数の “D” 引数は、日付の差を日数で計算することを指定していることに注意してください。
日付の差に使用できる単位の完全なリストについては、 VBA ドキュメント ページを参照してください。
次の例は、この構文を実際に使用する方法を示しています。
例: VBA で日付間の日数を計算する
Excel に日付を含む次の 2 つの列があるとします。
各行の開始日と終了日の間の日付の数を計算し、その結果を列 C に表示するとします。
これを行うには、次のマクロを作成できます。
SubDaysBetweenDates ()
Dim i As Integer
For i = 2 To 7
Range(" C " & i) = DateDiff(" D ", Range(" A " & i), Range(" B " & i))
Next i
End Sub
このマクロを実行すると、次の出力が表示されます。
各開始日と各終了日の間の日付の数が列 C に示されます。
追加リソース
次のチュートリアルでは、VBA で他の一般的なタスクを実行する方法について説明します。