IsDate 関数

IsDate(expression)

式を日付に変換できるかどうかを調べ、結果をブール値で返します。

引数

expression
日付または時刻として認識できる日付式または文字列式を指定します。

解説

IsDate 関数は、指定した式が日付である場合、またはその式を日付に変換できる場合は、真 (True) を返します。変換できない場合は、偽 (False) を返します。Microsoft Windows で有効な日付の範囲は、西暦 100 年 1 月 1 日から西暦 9999 年 12 月 31 日までです。この範囲は、オペレーティング システムによって異なります。

使用例

次のコードは、IsDate 関数を使って式を日付に変換できるかどうかを調べる例です。

01Dim MyDate, YourDate, NoDate, MyCheck
02MyDate = "October 19, 1962"
03YourDate = #10/19/62#
04NoDate = "Hello"
05MyCheck = IsDate(MyDate)           '真 (True) を返します。
06MyCheck = IsDate(YourDate)         '真 (True) を返します。
07MyCheck = IsDate(NoDate)           '偽 (False) を返します。
08 
09MyCheck = IsDate("2004/02/29")     '真 (True) を返します。
10MyCheck = IsDate("2005/02/29")     '偽 (False) を返します。

次のコードは、IsDate 関数を使って与えられた月の末日を調べる例です。

01'年月日を返します。
02Function GetLastDay(MyDate)
03     Dim i, strDate
04     i = 31
05     '日付を与えられた年月の31日にする
06     strDate = Year(MyDate) & "/" & Month(MyDate) & "/" & i
07     '日付として認識できるまで繰り返す
08     Do While Not IsDate(strDate)
09          '1日前にする
10          i = i - 1
11          strDate = Year(MyDate) & "/" & Month(MyDate) & "/" & i
12     Loop
13     GetLastDay = strDate
14End Function

01'日を返します。
02Function GetLastDay(MyDate)
03     Dim i, MyCheck
04     i = 31
05     MyDate = Year(MyDate) & "/" & Month(MyDate) & "/"
06     MyCheck = MyDate & i
07     '日付として認識できるまで繰り返す
08     Do While Not IsDate(MyCheck)
09          i = i - 1
10          MyCheck = MyDate & i
11     Loop
12     GetLastDay = i
13End Function

DateAdd 関数を使うともっと簡単に調べられます。

関連

CDate 関数 | IsArray 関数 | IsEmpty 関数 | IsNull 関数 | IsNumeric 関数 | IsObject 関数 | VarType 関数

このページの先頭へ