2017年7月25日

【Excel】数値を通貨形式の書式で表示するマクロ


FormatCurrency関数で数値を通貨形式の書式で表示できます。

Sub GetFormatCurrency()

    MsgBox FormatCurrency(1200)
        
End Sub
通貨記号や位置は、システムの地域の設定によって決まります。
第2引数以下の引数を省略すると、省略した引数の設定にはシステムの地域の設定が使用されます。

実行結果



表示する小数点以下の桁数を指定

第2引数に少数の桁数を指定できます。数値は四捨五入されるようです。
Sub GetFormatCurrency()

    MsgBox FormatCurrency(200 / 3, 2)

End Sub

実行結果



小数値に先行ゼロを表示するかどうかの指定

第3引数で小数値に先行ゼロ(1以下の数値の場合の先頭の0という意味?)を表示させるかどうかを指定できます。
Sub GetFormatCurrency()

    MsgBox FormatCurrency(0.056, 3, vbTrue)

End Sub
Trueを指定した場合。

実行結果


Sub GetFormatCurrency()

    MsgBox FormatCurrency(0.056, 3, vbFalse)

End Sub
Falseを指定した場合。

実行結果



負の値をカッコで囲むかどうかの指定

第4引数で負の値をカッコで囲むかの指定ができます。
Sub GetFormatCurrency()

    MsgBox FormatCurrency(-100, -1, vbTrue, vbTrue)

End Sub
Trueを指定。

実行結果

カッコで囲まれた形で表示されます。


区切り記号の表示

第5引数で桁の区切り記号を表示させるかどうかの指定が出来ます。
Sub GetFormatCurrency()

    MsgBox FormatCurrency(1234567, -1, vbTrue, vbTrue, vbFalse)

End Sub
Falseを指定。

実行結果

カンマが無い状態で表示されます。



<参考サイト>
FormatCurrency 関数 | Office VBA 言語リファレンス


スポンサーリンク