Excel VBA FormatCurrency関数の使い方と通貨形式の文字列に変換

VBA関数

VBAで「FormatCurrency関数」を使用して、指定した値を通貨形式に変換する方法をご説明します。

通貨形式と言っても、コントロールパネルの「地域のプロパティ」の「通貨タブ」で設定されている書式を使って通貨形式の文字列を返します。

基本的な書式設定であれば「Format関数」を使用する事で、同様の結果を得られます。

詳細については「Format関数で表示形式を指定する」をご覧ください。

1.FormatCurrency関数の使い方

「FormatCurrency関数」は次のように記述します。

FormatCurrency(Expression,
               NumDigitsAfterDecimal,
               IncludeLeadingDigit,
               UseParensForNegativeNumbers,
               GroupDigits)

文頭でも記載していますが、コントロールパネルの「地域のプロパティ」の「通貨タブ」で設定されている書式を使って通貨形式の文字列を返します。

小数点以下の桁数、小数点の左側のゼロの表示、負の値の場合の括弧使用、桁区切りの設定をする事が可能です。

省略時には、コントロールパネルの設定のままの表示形式となります。

引数一覧
引数名省略説明
Expression必須変換の対象となる数値や数式を指定します。
NumDigitsAfterDecimal省略可能小数点以下に表示する桁数を指定します。
IncludeLeadingDigit省略可能 小数点の左側のゼロを表示するか指定します。
UseParensForNegativeNumbers省略可能負の値の場合に値を括弧で囲むか指定します。
GroupDigits省略可能桁区切りを表示するか指定します。
IncludeLeadingDigit・UseParensForNegativeNumbers・GroupDigits定数一覧

引数3~5の引数の定数一覧です。

定数説明
vbTrue-1
vbFalse0
vbUseDefault-2 [地域のプロパティ]ダイアログボックスの設定値を使用します。

2.サンプルコード

Sub Sample1()

'引数の説明
'指定値、小数点以下桁数、小数点以下0を表示、負の場合の括弧、桁区切り

Debug.Print FormatCurrency(12345, 1, vbFalse, vbFalse, vbTrue) '\12,345.0

Debug.Print FormatCurrency(10 / 3, 2, vbFalse, vbFalse, vbFalse) '\3.33

Debug.Print FormatCurrency(-12345, 0, vbFalse, vbTrue, vbTrue) '(\12,345)

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