【VBA】文字列から日付型へ変換する方法

2023年4月2日

Excelシートやインプットボックスから受け取ったデータは最初は文字列になります。

そこから明日や来月などを計算しようとすると文字列だと不都合がありますよね。

そんなときは一度文字列を日付型に変換するのがおすすめです。

今回はCDate関数を使って文字列を日付型に変換する方法を紹介します。

文字列から日付型へ変換する方法

Sub Str2Date()
    '''文字列を日付型に変換
    
    Dim str As String
    Dim dt As Date
    
    str = "2023/03/03 0:00:00"
    dt = CDate(str) '日付型に変換
    
    Debug.Print DateAdd("d", 1, dt) '明日の日付
    Debug.Print DateAdd("m", 1, dt) '来月の日付
End Sub

サンプルコードでは文字列strを日付型dtへ変換をしています。

変換自体はdt = CDate(str)とするだけでOKです。

一旦日付型に変換しておけば、DateAdd関数を使って明日や来月などを簡単に計算することができます。

DateAdd関数については↓の記事をご覧ください。

VBAが難しいと感じたら
プロにお任せして代わりに作ってもらってはいかがでしょう?
VBAの作成依頼はこちらから

《VBA中級者向けの本》
VBA上級者を目指したい人にはパーフェクトExcel VBA一択です。

created by Rinker
技術評論社
¥3,608 (2023/06/06 16:32:04時点 Amazon調べ-詳細)

他の「VBA」の記事はこちらからどうぞ

VBA

Posted by やろまい