【EXCEL VBA】日付変換 yyyymmdd形式 と Date型を相互変換したい

日付変換方法の紹介です。yyyymmdd形式をDate型へ変換。Date型をyyyymmdd形式に変換する方法です。Format関数を利用することで変換することができます。

Format関数で解決する

Format 関数は、もともとは値を指定した書式で文字列型に変換する関数です。yyyymmdd形式の文字列をDate型に型変換できる文字列に変換することで、Date型への変換を実現しています。

サンプルプログラムを確認する(コピペOK)

Sub sample()
    Dim str As String: str = "20190615"
    Dim dt As Date
    
    ' yyyymmdd形式からDate型への変換
    dt = Format(str, "@@@@/@@/@@")
    Debug.Print dt                      '2019/06/15
    Debug.Print Year(dt)                '2019
    Debug.Print Month(dt)               '6
    Debug.Print Day(dt)                 '15
    
    ' Data型からyyyymmdd形式への変換
    Debug.Print Format(dt, "yyyymmdd")  '20190615
End Sub