動作検証バージョン:64bit Windows 10 Pro + 32bit Excel(バージョン2207 ビルド15427.20210 Microsoft Store)
「今月の月を変数に入れるマクロ」
といった検索キーワードでアクセスがありました。
変数に代入しておいて、その後どう使うのかによって、数値として代入する場合と、文字列として代入する場合があるように思います。
8月であれば、数値としての「8」を代入しておきたい場合と、文字列の「08」を代入するほうが便利な場合です。
[スポンサードリンク]
今月の月を変数に代入するサンプルマクロ
以下のマクロが参考になるでしょう。
Sub 今月の月を変数に()
Dim m As Long
m = Month(Date)
MsgBox m
Dim m As Long
m = Month(Date)
MsgBox m
Dim mm As String
mm = Format(Date, "mm")
MsgBox mm
上記のマクロを、8月中に実行すると、メッセージボックスに「8」と「08」が順番に表示されます。
数値ならMonth関数・文字列ならFormat関数
VBAのDate関数を、Month関数の引数に指定することで、今月の月を表す数値を取得できます。
それをメッセージボックスに表示しているのが前半の
Dim m As Long m = Month(Date) MsgBox m
です。
数値としての月ですから変数は「As Long」で宣言しています。
VBAのFormat関数の第1引数にDate関数を、第2引数に文字列「mm」を指定すれば1月から9月の場合「01」「09」といった文字列を取得できます。
これをメッセージボックスに表示しているのが後半の、
Dim mm As String mm = Format(Date, "mm") MsgBox mm
です。
こちらは文字列ですから変数を「As String」と宣言しています。
[スポンサードリンク]
Home » エクセルマクロ・Excel VBAの使い方 » VBA関数 » VBAで今月の月を変数に代入するには-Date関数・Month関数・Format関数