MonthName関数:1から12の数値から月の名前を文字列で取得するExcel VBA関数

MonthNameとは、引数の数値から月の名前に変換し文字列で返す関数です。

引数に1から12の範囲外の数値を指定した場合はエラーになります。


構文: MonthName( Month , Abbreviate )

Month : 月の数値を1から12で指定します。

Abbreviate : Trueを指定すると「月」の文字が省略されます。デフォルトはFalseです。





Homeに戻る > Excel 日付・時刻関数のTipsへ

MonthName関数のVBA使用例

今日の月を指定し、月名をB2セルに表示するVBAです。
今日の月を指定し、月名をB2セルに表示するVBA

・今日の月は、Month(Now)で取得しています。

Sub MyMonthName()
    Range("B2") = MonthName(Month(Now))
End Sub

実行すると、月名が表示されます。
文字列で返るので、左揃えになっています。
月名が表示された

Abbreviateの引数をTrueにした場合

引数AbbreviateのデフォルトはFalseなので、上では指定しませんでしたが、ここではTrueを指定します。
引数AbbreviateにTrueを指定

Sub MyMonthName()
    Range("B2") = MonthName(Month(Now), True)
End Sub

「月」の文字が省略されました。
文字列で返りますが、Excelが自動的に数値にしています。
「月」の文字が省略され表示

MonthNameでエラーになる場合

引数Monthに1から12でない、13を指定すると「実行時エラー:5 プロシージャの呼び出し、または引数が不正です。」
とエラーが表示されます。
引数Monthに1から12でない、13を指定するとエラー

MonthNameの応用例

For Nextのループを使用し、1月から12月を表示させるVBAです。
For Nextのループを使用し、1月から12月を表示させるVBA

・Cells(i + 1, 2)で、下の行に移動させています。

Sub MyMonthName()
    Dim i As Long
    
    For i = 1 To 12
        Cells(i + 1, 2) = MonthName(i)
    Next
End Sub

実行結果です。
B2セルから下の行に、1月から12月の文字列が表示できました。
1月から12月の文字列が表示できた


Homeに戻る > Excel 日付・時刻関数のTipsへ

■■■
このサイトの内容を利用して発生した、いかなる問題にも一切責任は負いませんのでご了承下さい
■■■
当ホームページに掲載されているあらゆる内容の無許可転載・転用を禁止します


Copyright (c) Excel-Excel ! All rights reserved