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 | 真 |
vbFalse | 0 | 偽 |
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