VBA関数
FormatCurrency関数,FormatDateTime関数,FormatNumber関数,FormatPercent関数

Excelマクロで必須のVBA関数を入門・初級・初心者向けに詳細解説
最終更新日:2020-01-19

FormatCurrency関数,FormatDateTime関数,FormatNumber関数,FormatPercent関数


Format関数は、式を指定した書式に変換しますが、
FormatCurrency関数
FormatDateTime関数
FormatNumber関数
FormatPercent関数
これらの関数は、
コンピューターの地域の設定を使用して、通貨/日付時刻/数値/パーセンテージの書式に変換する場合に使用します。


FormatCurrency関数

コントロール パネルで定義された通貨記号を使用して、通貨値として書式設定された式を返します。

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

引数 説明
Expression 必須。
書式設定する式です。
NumDigitsAfterDecimal 省略可能。
表示する小数点以下の桁数を示す数値です。
既定値は-1:コンピューターの地域の設定が使用されます。
IncludeLeadingDigit 省略可能。
小数値に先頭のゼロを表示するかどうかを示すTristate定数です。
省略値はvbUseDefault:コンピューターの地域の設定が使用されます。
UseParensForNegativeNumbers 省略可能。
負の値をかっこで囲むかどうかを示すTristate定数です。
省略値はvbUseDefault:コンピューターの地域の設定が使用されます。
GroupDigits 省略可能。
コンピューターの地域の設定で指定されている桁区切り記号を使用して数値を区切るかどうかを示すTristate定数です。
省略値はvbUseDefault:コンピューターの地域の設定が使用されます。

Tristate定数



定数 説明
vbTrue -1 TRUE
vbFalse 0 FALSE
vbUseDefault -2 コンピューターの地域の設定を使用します。

コントロールパネル「地域」→「追加の設定」→「通貨」

VBA マクロ Format Currency

FormatCurrency関数の使用例

以下の結果は、コンピューターの地域の設定により変化します。

使用例 結果
FormatCurrency(12345) \12,345
FormatCurrency(12345, 2) \12,345.00
FormatCurrency(0.123, 2, False) \.12
FormatCurrency(-12345, , , vbTrue) (\12,345)
FormatCurrency(12345, , , , vbTrue) \12,345

FormatDateTime関数

日付または時刻として書式設定された式を返します。

FormatDateTime(Date, [ NamedFormat ])

引数 説明
Date 必須。
書式設定する日付式。
NamedFormat 省略可能。
使用する日付/時刻の形式を示す数値。
省略値はvbGeneralDate

NamedForma

定数 説明
vbGeneralDate 0 日付と時刻のどちらか、または両方を表示します。
日付部分がある場合は、短い日付として表示します。
時刻部分がある場合は、長い時刻として表示します。
両方ある場合は両方の部分を表示します。
vbLongDate 1 コンピューターの地域の設定で指定されている長い日付形式を使用して日付を表示します。
vbShortDate 2 コンピューターの地域の設定で指定されている短い日付形式を使用して日付を表示します。
vbLongTime 3 コンピューターの地域の設定で指定されている時刻形式を使用して時刻を表示します。
vbShortTime 4 24 時間形式 (hh:mm) を使用して時刻を表示します。

コントロールパネル「地域」→「追加の設定」→「時刻」「日付」

VBA マクロ FormatDateTime

VBA マクロ FormatDateTime

FormatCurrency使用例

以下の結果は、コンピューターの地域の設定により変化します。



使用例 結果
FormatDateTime(Now()) 2020/01/19 14:32:58
FormatDateTime(Now(), vbLongDate) 2020年1月19日
FormatDateTime(Now(), vbLongTime) 14:32:58
FormatDateTime(Now(), vbShortDate) 2020/01/19
FormatDateTime(Now(), vbShortTime) 14:32

FormatNumber関数

数値として書式設定された式を返します。

FormatNumber(Expression, [ NumDigitsAfterDecimal, [ IncludeLeadingDigit, [ UseParensForNegativeNumbers, [ GroupDigits ]]]])

引数 説明
Expression 必須。
書式設定する式です。
NumDigitsAfterDecimal 省略可能。
表示する小数点以下の桁数を示す数値です。
既定値は-1:コンピューターの地域の設定が使用されます。
IncludeLeadingDigit 省略可能。
小数値に先頭のゼロを表示するかどうかを示すTristate定数です。
省略値はvbUseDefault:コンピューターの地域の設定が使用されます。
UseParensForNegativeNumbers 省略可能。
負の値をかっこで囲むかどうかを示すTristate定数です。
省略値はvbUseDefault:コンピューターの地域の設定が使用されます。
GroupDigits 省略可能。
コンピューターの地域の設定で指定されている桁区切り記号を使用して数値を区切るかどうかを示すTristate定数です。
省略値はvbUseDefault:コンピューターの地域の設定が使用されます。

Tristate定数

定数 説明
vbTrue -1 TRUE
vbFalse 0 FALSE
vbUseDefault -2 コンピューターの地域の設定を使用します。

コントロールパネル「地域」→「追加の設定」→「数値」

VBA マクロ FormatNumber

FormatNumber関数の使用例

以下の結果は、コンピューターの地域の設定により変化します。

使用例 結果
FormatNumber(12345) 12,345.00
FormatNumber(12345, 1) 12,345.0
FormatNumber(0.123, 2, False) .12
FormatNumber(-12345, , , vbTrue) (12,345.00)
FormatNumber(12345, , , , vbTrue) 12,345.00

FormatPercent関数

パーセンテージとして (100 倍して) 書式設定された式を、末尾に % 記号を追加して返します。

FormatPercent(Expression, [ NumDigitsAfterDecimal, [ IncludeLeadingDigit, [ UseParensForNegativeNumbers, [ GroupDigits ]]]])

引数 説明
Expression 必須。
書式設定する式です。
NumDigitsAfterDecimal 省略可能。
表示する小数点以下の桁数を示す数値です。
既定値は-1:コンピューターの地域の設定が使用されます。
IncludeLeadingDigit 省略可能。
小数値に先頭のゼロを表示するかどうかを示すTristate定数です。
省略値はvbUseDefault:コンピューターの地域の設定が使用されます。
UseParensForNegativeNumbers 省略可能。
負の値をかっこで囲むかどうかを示す Tristate 定数です。
省略値はvbUseDefault:コンピューターの地域の設定が使用されます。
GroupDigits 省略可能。
コンピューターの地域の設定で指定されている桁区切り記号を使用して数値を区切るかどうかを示すTristate定数です。
省略値はvbUseDefault:コンピューターの地域の設定が使用されます。

Tristate定数

定数 説明
vbTrue -1 TRUE
vbFalse 0 FALSE
vbUseDefault -2 コンピューターの地域の設定を使用します。

コントロールパネル「地域」→「追加の設定」→「数値」

VBA マクロ FormatPercent

FormatPercent関数の使用例

以下の結果は、コンピューターの地域の設定により変化します。

使用例 結果
FormatPercent(1.23) 123.00%
FormatPercent(1.23, 1) 123.0%
FormatPercent(0.0012, 2, False) .12%
FormatPercent(-0.12, , , vbTrue) (12.00%)
FormatPercent(12.3, , , , vbTrue) 1,230.00%


※VBA関数一覧

VBA関数の一覧と解説です、どんな関数があるかは一度は確認しておくとをお勧めいたします。どんな関数があるだけでも知っておけば、詳細の使い方は実際に使うときに調べても良いでしょう。文字列操作…34 分岐…3 型変換…14 データ判定…10 日付時刻…20 配列…6 ファイル操作…14 数学/財務…28 その他…18 MicrosoftDocsOfficeV…



同じテーマ「VBA関数」の記事

Chr関数,ChrB関数,ChrW関数
Format関数
FormatCurrency関数,FormatDateTime関数,FormatNumber関数,FormatPercent関数
InStr関数
InStrRev関数
LCase関数
Left関数,LeftB関数
Len関数,LenB関数
LTrim関数
Mid関数,MidB関数
Replace関数


新着記事NEW ・・・新着記事一覧を見る

Variantの数値型と文字列型の比較|エクセル雑感(7月1日)
VBAのVariant型について|VBA技術解説(6月30日)
VBAのString型の最大文字数について|エクセル雑感(6月20日)
VBAで表やグラフをPowerPointへ貼り付ける|VBAサンプル集(6月19日)
アクティブシート以外の表示(Window)に関する設定|VBA技術解説(6月17日)
マクロ記録での色のマイナス数値について|エクセル雑感(6月16日)
ツイッター投稿用に文字数と特定文字で区切る|エクセル雑感(6月15日)
日付の謎:IsDateとCDate|エクセル雑感(6月14日)
IFステートメントの判定|エクセル雑感(6月13日)
インクリメンタルサーチの実装|ユーザーフォーム入門(6月12日)


アクセスランキング ・・・ ランキング一覧を見る

1.最終行の取得(End,Rows.Count)|VBA入門
2.RangeとCellsの使い方|VBA入門
3.変数宣言のDimとデータ型|VBA入門
4.マクロって何?VBAって何?|VBA入門
5.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
6.Range以外の指定方法(Cells,Rows,Columns)|VBA入門
7.繰り返し処理(For Next)|VBA入門
8.セルに文字を入れるとは(Range,Value)|VBA入門
9.とにかく書いてみよう(Sub,End Sub)|VBA入門
10.マクロはどこに書くの(VBEの起動)|VBA入門




このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。


記述には細心の注意をしたつもりですが、
間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
掲載のVBAコードは動作を保証するものではなく、あくまでVBA学習のサンプルとして掲載しています。
掲載のVBAコードは自己責任でご使用ください。万一データ破損等の損害が発生しても責任は負いません。



このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。
本文下部へ