本ページには広告が含まれています。
日時(date)に、指定した単位(interval)の時間(num)を加算して返します。正の値で未来、負の値で過去になります。戻り値は計算した結果の時刻部分が00:00:00のときは日付のみ、それ以外の場合は日時を返します。
- 構文
- UString = dateAdd( interval, num, date )
- 引数
- interval 必須
- 加算する時間間隔を表す文字列式(yyyy:年、m:月、d:日、ww:週、h:時、n:分、s:秒)
- num 必須
- dateに加算する値。未来は正、過去は負で指定
- date 必須
- 時間間隔を加算する日付
- 戻り値
- 日時(date)に、指定した単位(interval)の時間(num)を加算して返します
プログラム
解説
- 2行目
- 年、月、日、戻り値の日付を代入する変数。
- 3行目
- GETTIMEでdateの日付を特殊変数にセットします。
- 5-6,9,27,30,33,36,39,42行目
- intervalの値によって分岐。yyyy(年)なら7行目>>>、m(月)なら10行目>>>、d(日)なら28行目>>>、ww(週日)なら31行目>>>、h(時)なら34行目>>>、n(分)なら37行目>>>、s(秒)なら40行目>>>。
- 7-8行目
- dateの年にnumを加算。
- 10-26行目
- 28-29行目
- GETTIME関数で第一引数に加算する日数を指定し、特殊変数から日付を取得。
- 31-32行目
- GETTIME関数で第一引数に加算する週数×7を指定し、特殊変数から日付を取得。
- 34-35行目
- GETTIME関数で第一引数に加算する時間/24を指定し、特殊変数から日付を取得。
- 37-38行目
- GETTIME関数で第一引数に加算する分数/1440を指定し、特殊変数から日付を取得。1日=1,440分。
- 36-38行目
- GETTIME関数で第一引数に加算する秒数/86400を指定し、特殊変数から日付を取得。1日=86,400秒。
- 40-41行目
- dを戻り値として返す。
複数の時間間隔や文字列形式の日時を加算
加算する時間間隔が単一でないもしくは文字列形式の日時を加算する場合、dateValue関数 (自作関数)やtimeValue関数でシリアル値に変換した値をnumに指定します。シリアル値は1日を1とする値なのでintervalにはdを指定します。
- 結果
使い方
- 結果
2021/12/03 2026/11/17 20:01:36 2026/11/26 2021/10/27
プログラム実行例
今週の土曜日の日付を求める
まずgetWeekday関数で曜日番号(日曜:0〜土曜:6)を求め、今日の日付から引くことで今週の日曜日の日付を求めます。
-1 * getWeekday(date)で今週の日曜日を求めてます。
その日付から求めたい曜日の曜日番号を加えることで、目的の日付を求められます。
使用関数
2週間後の月曜日の日付を求める
まず-1 * getWeekday(date)で今週の日曜日を求めます。
今週の日曜日を求めてから、w * 7 + nを加算することでn週間後のw曜日を求めることができます。
wは0(日曜日)〜6(土曜日)の曜日番号で指定。
使用関数
明日(1日後)の日付を求める
結果
2026/09/18
使用関数
昨日(1日前)の日付を求める
結果
2026/09/16
使用関数
来週の日曜日と土曜日の日付を求める
使用関数
指定した日付の週の日曜日と土曜日の日付を求める
結果
使用関数
指定した日付の月初めと月末の日付を求める
結果
使用関数
過去7日間に受信した迷惑メールの受信日時とメールアドレスを取得
使用関数
今週の日曜日の日付を求める
使用関数
四十九日法要
命日から四十九日法要の日付を求めます。四十九日は命日を1日目として49日目なのでnumは49-1とします。
以下は命日が2025/04/05のときの四十九日を求めています。
結果
使用関数
関連記事
- GETTIME関数 (スクリプト関数)
- 日付、時間を取得します。
- getWeekdayName関数 (自作関数)
- 引数で指定した曜日番号に対応する曜日名を返します。
- getYear関数 (自作関数)
- 指定された日付の年を返します。
- getMonth関数 (自作関数)
- 指定された日付の月を返します。
- getDay関数 (自作関数)
- 指定された日付の日を返します。
- getWeekday関数 (自作関数)
- 引数に指定された日付の曜日番号(0:日曜〜6:土曜)を返します。
- getEndOfMonth関数 (自作関数)
- dateで指定された月の月末日を取得します。
- today関数 (自作関数)
- 今日の日付を返します。
- dateString関数 (自作関数)
- 指定された日付を西暦から和暦に変換します。
- dateValue関数 (自作関数)
- 日付形式の文字列をシリアル値に変換します。
