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

Excelマクロで必須のVBA関数を入門・初級・初心者向けに詳細解説
公開日:2013年5月以前 最終更新日:2021-08-14

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%


Office VBA リファレンス FormatCurrency関数
Office VBA リファレンス FormatDateTime関数
Office VBA リファレンス FormatNumber関数
Office VBA リファレンス FormatPercent関数


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



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

Chr関数,ChrB関数,ChrW関数
Format関数
FormatCurrency関数,FormatDateTime関数,FormatNumber関数,FormatPercent関数
InStr関数
InStrRev関数
LCase関数
UCase関数
Replace関数
Left関数,LeftB関数
Right関数,RightB関数
Mid関数,MidB関数


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

ExcelマクロVBA入門目次|エクセルの神髄(2024-03-20)
VBA10大躓きポイント(初心者が躓きやすいポイント)|VBA技術解説(2024-03-05)
テンキーのスクリーンキーボード作成|ユーザーフォーム入門(2024-02-26)
無効な前方参照か、コンパイルされていない種類への参照です。|エクセル雑感(2024-02-17)
初級脱出10問パック|VBA練習問題(2024-01-24)
累計を求める数式あれこれ|エクセル関数応用(2024-01-22)
複数の文字列を検索して置換するSUBSTITUTE|エクセル入門(2024-01-03)
いくつかの数式の計算中にリソース不足になりました。|エクセル雑感(2023-12-28)
VBAでクリップボードへ文字列を送信・取得する3つの方法|VBA技術解説(2023-12-07)
難しい数式とは何か?|エクセル雑感(2023-12-07)


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

1.最終行の取得(End,Rows.Count)|VBA入門
2.RangeとCellsの使い方|VBA入門
3.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
4.繰り返し処理(For Next)|VBA入門
5.変数宣言のDimとデータ型|VBA入門
6.ブックを閉じる・保存(Close,Save,SaveAs)|VBA入門
7.並べ替え(Sort)|VBA入門
8.条件分岐(IF)|VBA入門
9.セルのクリア(Clear,ClearContents)|VBA入門
10.マクロとは?VBAとは?VBAでできること|VBA入門




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


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



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