Excel VBAで,2つの日付を比較し,差分を計算する関数
日付の間隔を求めるVBAサンプルコード。
けっこう簡単に,日数を計算できる。
Sub main() ' 2つの日付を比較 d1 = CDate("2001/01/01") d2 = CDate("2015/12/31") MsgBox DateDiff("d", d1, d2) ' d2 - d1 MsgBox DateDiff("d", d2, d1) ' d1 - d2 ' 今日の日付と比較 MsgBox DateDiff("d", Date, d2) ' 今日からd2まで MsgBox DateDiff("d", d2, Date) ' d2から今日まで End Sub
コードの説明
CDate関数で,文字列を日付オブジェクトに変換。
DateDiff関数で,2つの日付オブジェクトを比較できる。
引数の順番は,(1番目)から(2番目)まで,の日数。
もし計算結果の符号が負であれば,過去にさかのぼっているのだと判定できる。
参考資料
アクセスVBA講座_関数編_日付・時刻関数
http://www.geocities.jp/cbc_vbnet/fun...
三流君VBA:文字列を日付型に変換、Cdateへの値の渡し方いろいろ?
http://www.ken3.org/vba/backno/vba072...