HOME > 即効テクニック > Excel VBA > 関数関連のテクニック > 通貨形式の書式に変換した値を返す(FormatCurrency関数)

即効テクニック

関数関連のテクニック

通貨形式の書式に変換した値を返す(FormatCurrency関数)

(Excel 2000)
FormatCurrency関数は、コントロールパネルの[地域のプロパティ]の[通貨]タブで設定されている書式を使って通貨形式の文字列を返します。
小数点以下の桁数、小数点の左側のゼロの表示、負の値の場合の括弧使用、桁区切りの設定をコントロールパネルの設定から変更したい場合には、それぞれの引数で指定を行ってください。省略時には、コントロールパネルの設定のままの表示形式となります。なお、引数IncludeLeadingDigit, UseParensForNegativeNumbers, GroupDigitsに使用する定数に関しては、次の表のとおりです。

・FormatCurrency関数の第3〜第5引数で使用する定数一覧
 定数		値	説明
 VbTrue		-1	真 (True)
 VbFalse		0	偽 (False)
 VbUseDefault	-2	[地域のプロパティ] の設定値を使用します。


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

  設定項目                  内容
  Expression                   変換の対象となる数値や数式を指定[省略不可]
  NumDigitsAfterDecimal        小数点以下に表示する桁数を指定[省略可能]
  IncludeLeadingDigit          小数点の左側のゼロを表示するかどうか[省略可能]
  UseParensForNegativeNumbers  負の値の場合に値を括弧で囲むかどうか[省略可能]
  GroupDigits                  桁区切りを表示するかどうか[省略可能]


次のサンプルは、FormatCurrency関数と同等の機能をFormat関数で実現できることを示すものです。

●サンプル●
Sub FormatCurrencySamp1()
    Dim myStr1 As String, myStr2 As String
    '---Format関数で定義済み数値書式使用
    myStr1 = Format(123456, "Currency")
    '---FormatCurency関数
    myStr2 = FormatCurrency(123456)
    MsgBox "定義済み数値書式 : " & myStr1 & Chr(13) & _
           "FormatCurrency関数 : " & myStr2
End Sub