構文


CDate(値1)

1 - 値 ----- 文字列または数式を指定します。

解説


1に指定された値を、Date型に変換して返します。
指定された値が数値の場合には、整数部が日付を、小数部が時刻を表します。
指定された値が文字列で、日付として表せない場合は、実行時エラーとなります。

VBAコード


Sub Sample1() Debug.Print CDate(#1/23/2030#) Debug.Print CDate("2030年1月23日") Debug.Print CDate(47506.5) End Sub

実行


Debug.Print CDate(#1/23/2030#)
日付リテラル値をDate型に変換し、結果「2030/01/23」がイミディエイトウィンドウに表示されます。
ExcelVBA

Debug.Print CDate("2030年1月23日")
値をDate型に変換し、結果「2030/01/23」がイミディエイトウィンドウに表示されます。
ExcelVBA

Debug.Print CDate(47506.5)
シリアル値をDate型に変換し、結果「2030/01/23 12:00:00」がイミディエイトウィンドウに表示されます。
ExcelVBA
Excelでは、日付や時刻を「1900/1/1 0:00:00」から始まる「シリアル値」で表現しています。(「1900/1/1 0:00:00」が「1.0」)
例えば、日付の「2015/1/1」は、シリアル値で「42005」と表されます。
時刻はシリアル値の小数部で表し、例えば、時刻の「6:00」は、シリアル値で「0.25」と表されます。(1秒は「86400分の1」)
日付や時刻をシリアル値で表現することによって、Excelでは、日付の演算を簡単にしています。

関連するVBA


DateValueDateSerial