関数・メソッド

数値から月名を文字列で返す【MonthName関数】【ExcelVBA】

構文

MonthName(Month , [abbreviate])

Month・・・・・月名を数値で入力(1~12)※1~12以外はエラー
abbreviate・・・False→月を付与【規定値】True→月を省略【省略可能】

MonthName関数のサンプルコード

Public Sub sample()

    '■標準の使い方
    Debug.Print MonthName(1)         '1月
    Debug.Print MonthName(1, False)  '1月
    Debug.Print MonthName(1, True)   '1
    '
    '■本日日付から取得
    Debug.Print MonthName(Month(Now))   '8月
    
    '■エラーが発生する場合(ありえない月を指定する)
    '実行時エラー '5'プロシージャの呼び出し、または引数が不正です。
    Debug.Print MonthName(0)
    Debug.Print MonthName(13)

    '■文字列で渡しても数字だけならエラーにならず進む。
    Debug.Print MonthName("2")      '2月
    Dim str As String: str = "2"
    Debug.Print MonthName(str)      '2月

    '■数値以外を渡すとエラー
    '実行時エラー '13':型が一致しません。
    Debug.Print MonthName("あいうえお")
    
End Sub

注意点

  • 日本語環境の場合は「8月」or「8」といった表記ですが、
    英語環境 の場合は「August」 or 「Aug」といった表記となります。

関連記事

コメント

タイトルとURLをコピーしました