【VBA】年月日の取得と表示

VBA

年月日の取得と表示


現在日時を使って年月日を表示する

DateSerial関数の引数にNow関数を指定する

  • 2024年4月1日に実行した場合
Sub YMDNow1()

    Dim YMD

    YMD = DateSerial(Year(Now), Month(Now), Day(Now))
    MsgBox YMD

End Sub

実行結果

2024/04/01


加算と減算をして翌日と昨日を表示する

日付の計算で月跨ぎにも対応できる

  • 2024年4月1日に実行した場合
Sub YMDNow2()

    Dim YMD

    YMD = DateSerial(Year(Now), Month(Now), Day(Now) + 1)
    MsgBox YMD
    YMD = DateSerial(Year(Now), Month(Now), Day(Now) - 1)
    MsgBox YMD

End Sub

実行結果

2024/04/02
2024/03/31


先月末、今月末、翌月末を表示する

日付に0を指定することで先月末日を取得する

  • 2024年4月に実行した場合
Sub YMDNow3()

    Dim YMD

    YMD = DateSerial(Year(Now), Month(Now), 0)
    MsgBox YMD
    YMD = DateSerial(Year(Now), Month(Now) + 1, 0)
    MsgBox YMD
    YMD = DateSerial(Year(Now), Month(Now) + 2, 0)
    MsgBox YMD

End Sub

実行結果

2024/03/31
2024/04/30
2024/05/31


年月日の表示形式を指定する

年月日のフォーマット例

Sub FormatYMD()

    Dim YMD

    YMD = Format(Date, "yyyymmdd")
    MsgBox YMD
    YMD = Format(Date, "yyyy/mm/dd")
    MsgBox YMD
    YMD = Format(Date, "yyyy年mm月dd日")
    MsgBox YMD

End Sub

実行結果

20240401
2024/04/01
2024年04月01日

VBA

Posted by junichi