LOTUSSCRIPT 言語


日付/時刻
LotusScript には、このような日付/時刻データ型はありません。日付/時刻の値を持つ変数は宣言できません。ただし、LotusScript では内部的に日付が認識され、日付/時刻の値を入力、取得、操作するために使用する関数の集合が用意されています。日付/時刻の値は、8 バイト (倍精度) 浮動小数点数値として格納されます。整数部分は西暦 100 年 1 月 1 日から数えた通算日を表し、小数部分は時刻を 1 日の分数として表します。日付用に許容される値の範囲は、-657434 (西暦 100 年 1 月 1 日) から 2958465 (9999 年 12 月 31 日) までです。0 は西暦 1899 年 12 月 30 日を表します。

日付/時刻の値を保持して操作するには、Variant 型の変数を使用します。このような値は、以下の関数のいずれかを呼び出すことにより、生成できます。
関数/ステートメント目的
CDat 関数数値または文字列の式を日付/時刻の Variant 値に変換します。
Date 関数システム日付を返します。
Date ステートメントシステムの日付を設定します。
DateNumber 関数年、月、日を日付の値に変換します。
DateValue 関数文字列を日付の値に変換します。
Day 関数日付/時刻の式から月に対する日付 (1 〜 31) を返します。
FileDateTime 関数ファイルが最後に保存された日付と時刻を返します。
Format 関数数値、日付/時刻の値、または文字列をフォーマットします。
Hour 関数日付/時刻の式から、1 日のうちの経過時間数 (0〜24) を返します。
IsDate 関数Variant 型の日付/時刻の値の場合は True (-1) を返し、それ以外の場合は False (0) を返します。
Minute 関数日付/時刻の式から、その 1 時間内に経過した分数 (0〜59) を返します。
Month 関数日付/時刻の式から、月 (1〜12) を返します。
Now 関数現在のシステム日付/時刻を返します。
Second 関数日付/時刻の式から、その 1 分間に経過した秒数 (0〜59) を返します。
Time 関数システム時刻を返します。値の日付部分はゼロまたは 1899 年 12 月 30 日に設定されます。
Time ステートメントシステムの日付を設定します。
TimeNumber 関数時分秒を日付/時刻の小数点以下の値 (分数部分) に変換します。
Timer 関数午前 0 時からの経過した時間を秒単位で返します。
TimeValue 関数文字列を日付/時刻の分数の値に変換します。
Today 関数システム日付 (Date 関数と同等) を返します。
WeekDay 関数日付/時刻の式から週の何日目か (1〜7) を返します。
Year 関数日付/時刻の式から年を 4 桁の整数として返します。
メモ 日付/時刻の値を含む Variant 型の変数を加算して、日付/時刻値を含む Variant 型の変数をもう 1 つ作成してもよいです。ただし、日付/時刻の値を含む Variant 型の変数をもう 1 つの Variant 型の変数から減算すると、Double の Variant 型になります。Cdat 関数を使用して変数を日付/時刻の値に変換し直す必要があります。

DataType または TypeName 関数を使用すると、Variant 型の変数に日付または日付/時刻の値が入っているかどうかを調べられます。このような値が入っている場合、DataType は値 7 を返し、TypeName は DATE を返します。

次の例は、日付および日付/時刻の値を取得できるさまざまな方法、それらの値を Variant 型の変数に代入する方法、およびそれらの値に関して実行できるいくつかの操作 (ある期間の計算や、指定された日付の曜日を特定することなど) を示しています。

今日が 1994 年 10 月 26 日で、時刻が 7:49:23 AM だとして、次の変数を宣言します。

Dim theInstantV As Variant
Dim theDateV As Variant
Dim theDateValV As Variant
Dim myDate As String

次の例では、Now 関数を呼び出して現在の日付と時刻を取得し、その結果を Variant 型の変数 InstantV に代入します。


次の例では、(月の) 日にちと時間 (時分秒の時の部分) に対応する整数を表示します。
次の例では、現在の日付を Variant 型の変数 theDateV に代入します。
次の例では、現在の日付の値を Double 型の値に変換します。
次の例では、現在の年、月、日の整数表記を取得し、月と日の値を増やして、その結果をある Integer 型の変数に代入し、DateNumber に渡します。DateNumber はそれらの値に基づいて日付を計算して戻し、Variant 型の変数 theDateV に代入します。
次の例では、日付として解釈できる文字列を String 型の変数 myDate$ に代入し、それを日付/時刻の値に変換して計算を実行し (1 日を減算する)、結果の日付を返します。
次の例では、特定の出力形式で日付を表示します。
次の例では、現在の日付の日付/時刻の値を Double 型の値に変換します。
次の例では、特定の日付の日付/時刻の値を Double 型の値に変換します。これは、値を String 型として DateValue に渡し、その結果を (Double 型の値に変換する) CDbl に渡すことによって行います。
次の例では、2 つの日付の間の日数を計算します。
メモ 最初に Double に変換しないで日付の減算を行うと、Double の Variant 型になります。

次の例では、特定の日付が何曜日になるかを調べます。日曜日は 1 です。


値の整数部分がゼロの場合、その値は時刻値として解釈されます。
値の小数部分がゼロの場合、その値は日付値として解釈されます。
関連項目