教えて!ExcelVBA!

ExcelVBAの基礎知識・書き方について紹介します。

ExcelVBAでIsDate関数の使い方

構文

構文は以下の通りです。

IsDate(式)

解説

IsDate関数は、指定した式が有効な日付または時刻の値かどうかを判断するために使用されます。この関数は、指定された式が日付または時刻として解釈できる場合にTrueを返し、そうでない場合にFalseを返します。

プログラミング例

具体的なプログラミング例を紹介します。

(例1)単純な日付の判定

Sub 日付判定例1()
    Dim 結果 As Boolean
    結果 = IsDate("2024/09/04")
    MsgBox "結果: " & 結果
End Sub

上記のプログラムでは、文字列"2024/09/04"が有効な日付かどうかをIsDate関数で確認します。この場合、結果はTrueとなり、メッセージボックスで「結果: True」と表示されます。

(例2)無効な日付の判定

Sub 日付判定例2()
    Dim 結果 As Boolean
    結果 = IsDate("こんにちは")
    MsgBox "結果: " & 結果
End Sub

上記のプログラムでは、文字列"こんにちは"が有効な日付かどうかをIsDate関数で確認します。結果はFalseとなり、メッセージボックスで「結果: False」と表示されます。

(例3)数値としての日付判定

Sub 日付判定例3()
    Dim 結果 As Boolean
    結果 = IsDate(44204)
    MsgBox "結果: " & 結果
End Sub

上記のプログラムでは、数値44204が有効な日付かどうかをIsDate関数で確認します。44204はExcelでの日付シリアル値として2021年1月1日を表します。そのため、結果はTrueとなり、「結果: True」と表示されます。

まとめ

IsDate関数は、指定された値が有効な日付または時刻かを判断するために使用されます。日付や時刻として解釈できる場合はTrueを、そうでない場合はFalseを返します。文字列だけでなく、数値形式の日付シリアル値も判断可能です。