dateDiff関数

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

指定された2つの日付の時間間隔を返します。

構文
dateDiff( interval, date1, date2 )
引数
interval 必須
時間単位(yyyy︰年、q:四半期、m︰月、d︰日、w:週日、ww:週、h:時、n:分、s:秒)
date1 必須
日時1
date2 必須
日時2
戻り値
date2からdate1を引いた時間間隔を求めます。

プログラム

UWSC

解説

    2行目
    UWSC
    date1の年、date2の年、date1の月、date2の月、date1の日、date2の日、戻り値。
    3-4,10,18,26,30,32,35,37,39,41行目
    UWSC
    intervalの値によって分岐。yyyy(年)なら4行目>>>、q(四半期)なら10行目>>>、m(月)なら18行目>>>、d(日)なら26行目>>>、w(週日)なら30行目>>>、ww(週)なら32行目>>>、h(時)なら35行目>>>、n(分)なら37行目>>>、s(秒)なら39行目>>>。
    4-9行目
    UWSC
    date1の年をy1に、date2の年をy2に代入。y2-y1で差を計算。
    10-17行目
    UWSC
    四半期を求める。月を3で割り切り上げることで、その月四半期を求めることができる。
    18-25行目
    UWSC
    date1の年をy1、月をm1、date2の年をy2、月をm2に代入。(y2-y1)×12とm2-m1の和で差を計算。
    26-29行目
    UWSC
    GETTIME関数でdate1、date2のUWSC時間を取得する。GETTIMEの戻り値の単位は秒なので、d2-d1を86400で割ることで日単位にします。
    30-31行目
    UWSC
    date1とdate2の間隔を日単位で求め、7で割り週単位にする。
    32-34行目
    UWSC
    date1から曜日番号を引くことでその週の週開始日(日曜日)を求めdate1に代入。date1とdate2の間隔を日単位で求め7で割る。
    35-36行目
    UWSC
    date1とdate2の間隔を日単位で求め、24を掛けて時間単位にする。
    37-38行目
    UWSC
    date1とdate2の間隔を日単位で求め、1440(=24*60)を掛けて分単位にする。
    39-40行目
    UWSC
    date1とdate2の間隔を日単位で求め、86400(=24*60*60)を掛けて秒単位にする。
    42行目
    UWSC
    変数dを戻り値として返す。

使い方

UWSC
結果
プレーンテキスト

プログラム実行例

今年何パーセント終わった?

現在時刻時点で今年の何%が終わったのかをリアルタイムで確認できます。現在時刻、経過割合、残り日数を吹き出しに表示します。更新間隔は1秒です。

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

今月の残りの日数を返す

今日の日付から今月末までの日数の差を計算します。

明日から月末までの日数です。

UWSC
使用関数

関連記事

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