dateAdd関数

本ページには広告が含まれています。

日時(date)に、指定した単位(interval)の時間(num)を加算して返します。正の値で未来、負の値で過去になります。戻り値は計算した結果の時刻部分が00:00:00のときは日付のみ、それ以外の場合は日時を返します。

構文
  1. UString = dateAdd( interval, num, date )
引数
interval 必須
加算する時間間隔を表す文字列式(yyyy:年、m:月、d:日、ww:週、h:時、n:分、s:秒)
num 必須
dateに加算する値。未来は正、過去は負で指定
date 必須
時間間隔を加算する日付
戻り値
日時(date)に、指定した単位(interval)の時間(num)を加算して返します

プログラム

UWSC

解説

    2行目
    UWSC
    年、月、日、戻り値の日付を代入する変数。
    3行目
    UWSC
    GETTIMEでdateの日付を特殊変数にセットします。
    5-6,9,27,30,33,36,39,42行目
    UWSC
    intervalの値によって分岐。yyyy(年)なら7行目>>>、m(月)なら10行目>>>、d(日)なら28行目>>>、ww(週日)なら31行目>>>、h(時)なら34行目>>>、n(分)なら37行目>>>、s(秒)なら40行目>>>
    7-8行目
    UWSC
    dateの年にnumを加算。
    10-26行目
    UWSC
    28-29行目
    UWSC
    GETTIME関数で第一引数に加算する日数を指定し、特殊変数から日付を取得。
    31-32行目
    UWSC
    GETTIME関数で第一引数に加算する週数×7を指定し、特殊変数から日付を取得。
    34-35行目
    UWSC
    GETTIME関数で第一引数に加算する時間/24を指定し、特殊変数から日付を取得。
    37-38行目
    UWSC
    GETTIME関数で第一引数に加算する分数/1440を指定し、特殊変数から日付を取得。1日=1,440分。
    36-38行目
    UWSC
    GETTIME関数で第一引数に加算する秒数/86400を指定し、特殊変数から日付を取得。1日=86,400秒。
    40-41行目
    UWSC
    dを戻り値として返す。

複数の時間間隔や文字列形式の日時を加算

加算する時間間隔が単一でないもしくは文字列形式の日時を加算する場合、dateValue関数 (自作関数)timeValue関数でシリアル値に変換した値をnumに指定します。シリアル値は1日を1とする値なのでintervalにはdを指定します。

UWSC
結果
プレーンテキスト

使い方

UWSC
結果
プレーンテキスト
2021/12/03
2026/11/17 20:01:36
2026/11/26
2021/10/27

プログラム実行例

今週の土曜日の日付を求める

まずgetWeekday関数で曜日番号(日曜:0〜土曜:6)を求め、今日の日付から引くことで今週の日曜日の日付を求めます。

-1 * getWeekday(date)で今週の日曜日を求めてます。

その日付から求めたい曜日の曜日番号を加えることで、目的の日付を求められます。

UWSC
使用関数

2週間後の月曜日の日付を求める

まず-1 * getWeekday(date)で今週の日曜日を求めます。

今週の日曜日を求めてから、w * 7 + nを加算することでn週間後のw曜日を求めることができます。

wは0(日曜日)〜6(土曜日)の曜日番号で指定。

UWSC
使用関数

明日(1日後)の日付を求める

UWSC
結果
2026/09/18
使用関数

昨日(1日前)の日付を求める

UWSC
結果
2026/09/16
使用関数

来週の日曜日と土曜日の日付を求める

UWSC
使用関数

指定した日付の週の日曜日と土曜日の日付を求める

UWSC
結果
プレーンテキスト
使用関数

指定した日付の月初めと月末の日付を求める

UWSC
結果
プレーンテキスト
使用関数

過去7日間に受信した迷惑メールの受信日時とメールアドレスを取得

UWSC
使用関数

今週の日曜日の日付を求める

UWSC
使用関数

四十九日法要

命日から四十九日法要の日付を求めます。四十九日は命日を1日目として49日目なのでnum49-1とします。

以下は命日が2025/04/05のときの四十九日を求めています。

UWSC
結果
プレーンテキスト
使用関数

関連記事

GETTIME関数 (スクリプト関数)
日付、時間を取得します。
getWeekdayName関数 (自作関数)
引数で指定した曜日番号に対応する曜日名を返します。
getYear関数 (自作関数)
指定された日付のを返します。
getMonth関数 (自作関数)
指定された日付のを返します。
getDay関数 (自作関数)
指定された日付のを返します。
getWeekday関数 (自作関数)
引数に指定された日付の曜日番号(0:日曜〜6:土曜)を返します。
getEndOfMonth関数 (自作関数)
dateで指定された月の月末日を取得します。
today関数 (自作関数)
今日の日付を返します。
dateString関数 (自作関数)
指定された日付を西暦から和暦に変換します。
dateValue関数 (自作関数)
日付形式の文字列をシリアル値に変換します。