【エクセルVBA】DateDiffで二つの期間の差を数字で取得

投稿者: | 2021年7月23日
excelアイコン

エクセルバージョン

マイクロソフト365

 

今回は二つの期間の間隔が数字で取得できるDateDiff関数についてです。

それではいってみましょう!

DateDiff関数

概要

・二つの指定した日付の間隔(年数、月数、日数や時間など)をVariant(Long)で返します。

・何日前や何時間前など、過去の場合はマイナスになります。

構文

DateDiff(interval,date1,date2,[firstdayofweek,[firstweekofyear]])
[ ]は省略可

引数

DateDiff関数必須/省略可内容
interval
第1引数
必須

date1 と date2 の時間間隔の計算に使用する時間単位を表す文字列を指定。

指定方法の詳細

date1
第2引数
必須開始の日付を指定。
date2
第3引数
必須終わりの日付を指定。
firstdayofweek
第4引数
省略可週の始まり曜日を表す定数を指定。
省略は日曜日から。
指定方法の詳細
firstweekofyear
第5引数
省略可年の第1週を指定する定数を指定。
省略は1月1日を含む週が第1週。
指定方法の詳細

第1引数interval指定の詳細

設定内容
yyyy
q四半期
m
y通年での日数
d
w平日
ww
h
n
s

第4引数firstweekofyear指定の詳細

定数内容
vbUseSystem0NLS API 設定を使用します。
vbSunday1日曜日 (既定)
vbMonday2月曜日
vbTuesday3火曜日
vbWednesday4水曜日
vbThursday5木曜日
vbFriday6金曜日
vbSaturday7土曜日

第5引数firstweekofyearの詳細

定数内容
vbUseSystem0NLS API 設定を使用します。
vbFirstJan111 月 1 日が含まれる週から開始します (既定)。
vbFirstFourDays2新年で少なくとも 4 日ある最初の週から開始します。
vbFirstFullWeek3年の最初の完全な週から開始します。

 

VBAサンプル

現在から何年後

Debug.print

現在から何ヶ月後

現在から何週間後

現在から何日後

何時間後

何分後

何秒後

何日前

 

まとめ

二つの期間の差を求める時は便利に機能してくれそうです。

以上です。

日付の変換

【関数】(DATE)年,月,日から日付に変換

【関数】(DATEVALUE)文字形式の日付をシリアル値の日付に変換

【関数】(YEAR,MONTH,DAY)日付から年,月,日を取得

【VBA】(DateSerial)年,月,日から日付を取得

【VBA】(DateValue)文字の日付から日付を取得

時間

【関数】(TIME)時,分,秒を指定してシリアル値に変換

【関数】(TIMEVALUE)時間をシリアル値に変換

【VBA】(Time)現在時刻を取得

【VBA】(TimeValue)文字列の時間や数式から時刻を取得

【VBA】(TimeSerial)時,分,秒を指定して時刻を取得

【VBA】(Hour,Minute,Second)時,分,秒を分けて取得

現在の日時,日付

【関数】(NOW)現在の日時を取得

【関数】(TODAY)本日の日付を取得

【VBA】(Now)現在の日時を取得

【VBA】(Date)本日の日付を取得

曜日や週

【関数】(WEEKDAY)日付から曜日の整数を取得

【関数】(WEEKNUM)指定した日付が年初から第何週目か

【VBA】(Weekday)日付から曜日の定数や値を求める

【VBA】(WeekdayName)数値や定数を指定で曜日取得

土日や祝日

【関数】(WORKDAY)土日,祝日,指定日を除いた日付を取得

【関数】(NETWORKDAYS)土日,祝日,指定日を除いた日数を取得

何か月前や何か月後など

【関数】(EDATE)何ヶ月前や何ヶ月後の日付を取得

【関数】(EOMONTH)何か月前や何か月後の末日を取得

【VBA】(DateAdd)未来の日時や過去の日時を取得

2つの期間の差

【関数】(DAYS)二つの日付から日数を取得

【VBA】(DateDiff)二つの期間の差を数字で取得

関連記事

【機能】日付,曜日,時間のユーザー定義一覧

【機能】日付の西暦を和暦(元号)にする

【関数】土日を削除した日付データの作成方法

【関数】土日祝日を削除した日付データの作成方法

【関数】土日のみ色を付けた日付データの作成方法

【関数】曜日ごとに集計

【関数】月別の収支

【関数】時給と時間から日給を求める

【VBA】書式一覧Format

【VBA】日付や時刻かを調べる IsDate

【VBA】日時の取得、変換のいろいろ

【VBA】土日祝日を削除した日付データを作成

Excel目次