構文
構文は以下の通りです。
Format(対象値, 形式)
解説
Format関数は、日付や数値などのデータを指定された形式で表示するための関数です。対象値は、日付や数値など書式設定したい値を指定します。形式は、書式を指定するための文字列を指定します。例えば、日付を「yyyy/mm/dd」の形式にしたり、数値に通貨記号を付けたりできます。この関数を使うことで、見やすい形でデータを表示できます。形式のパターンを以下で紹介します。
【数値のパターン】
形式 | 内容 | 例 |
0 | 指定桁数の数値を表示。0は不足した桁を埋める | Format(12.3, "0000") → 0012 |
# | 数値を表示。ただし、表示しない部分には何も表示しない | Format(12.3, "####") → 12 |
#,##0 | 3桁ごとにカンマを追加し、数値を表示 | Format(1234567, "#,##0") → 1,234,567 |
0.00 | 小数点以下2桁を表示 | Format(12.345, "0.00") → 12.35 |
#,##0.00 | カンマ付きで小数点以下2桁を表示 | Format(1234.567, "#,##0.00") → 1,234.57 |
"¥"#,##0 | 通貨の「¥」記号を付けて表示 | Format(1234, "¥#,##0") → ¥1,234 |
"¥"#,##0;-"¥"#,##0 | 正負の通貨を表示。負数にはマイナス符号を付ける | Format(-1234, "¥#,##0;-"¥"#,##0") → -¥1,234 |
0.00% | パーセンテージ表示 | Format(0.123, "0.00%") → 12.30% |
【日付のパターン】
形式 | 内容 | 例 |
yyyy | 4桁の年を表示 | Format(#2024/09/05#, "yyyy") → 2024 |
yy | 2桁の年を表示 | Format(#2024/09/05#, "yy") → 24 |
mmmm | 月のフルスペルを表示 | Format(#2024/09/05#, "mmmm") → September |
mmm | 月の短縮形を表示 | Format(#2024/09/05#, "mmm") → Sep |
mm | 2桁の月を表示 | Format(#2024/09/05#, "mm") → 09 |
m | 1桁の月を表示 | Format(#2024/09/05#, "m") → 9 |
dddd | 曜日のフルスペルを表示 | Format(#2024/09/05#, "dddd") → Thursday |
ddd | 曜日の短縮形を表示 | Format(#2024/09/05#, "ddd") → Thu |
dd | 2桁の日を表示 | Format(#2024/09/05#, "dd") → 05 |
d | 1桁の日を表示 | Format(#2024/09/05#, "d") → 5 |
hh | 2桁の時(24時間形式)を表示 | Format(#14:30:00#, "hh") → 14 |
h | 1桁の時(24時間形式)を表示 | Format(#14:30:00#, "h") → 14 |
nn | 2桁の分を表示 | Format(#14:30:00#, "nn") → 30 |
n | 1桁の分を表示 | Format(#14:30:00#, "n") → 30 |
ss | 2桁の秒を表示 | Format(#14:30:30#, "ss") → 30 |
s | 1桁の秒を表示 | Format(#14:30:30#, "s") → 30 |
AM/PM | 12時間形式で、午前・午後を表示 | Format(#14:30:00#, "h:nn AM/PM") → 2:30 PM |
【特殊なパターン】
形式 | 内容 | 例 |
@ | テキストのまま表示 | Format("abc", "@@@") → abc |
"文字列" | 文字列として指定された部分をそのまま表示 | Format(1234, "数字は ""#,##0"" です") → 数字は 1,234 です |
空白 | 指定桁数の空白スペースを表示 | Format(123, "0000") → 0123 |
プログラミング例
具体的なプログラミング例を紹介します。
(例1)数値のフォーマット
Sub 数値の表示()
Dim 数字 As Double
数字 = 1234.567
MsgBox Format(数字, "#,##0.00") ' 「1,234.57」と表示されます
End Sub
Dim 数字 As Double
数字 = 1234.567
MsgBox Format(数字, "#,##0.00") ' 「1,234.57」と表示されます
End Sub
上記のプログラムは、Format関数を使用して、小数第2位までの数値に3桁ごとにカンマを付けて表示します。小数点以下の桁数を指定しているので、数値が丸められて表示されます。
(例2)日付のフォーマット
Sub 日付の表示()
Dim 日付 As Date
日付 = #2024/09/05#
MsgBox Format(日付, "yyyy年mm月dd日") ' 「2024年09月05日」と表示されます
End Sub
Dim 日付 As Date
日付 = #2024/09/05#
MsgBox Format(日付, "yyyy年mm月dd日") ' 「2024年09月05日」と表示されます
End Sub
上記のプログラムは、Format関数を使用して、日付を「年/月/日」の形式で表示します。yyyyは年、mmは月、ddは日を表します。この形式を使うことで、日付を見やすくカスタマイズして表示できます。
(例3)通貨のフォーマット
Sub 通貨の表示()
Dim 金額 As Double
金額 = 1234.567
MsgBox Format(金額, "¥#,##0") ' 「¥1,235」と表示されます
End Sub
Dim 金額 As Double
金額 = 1234.567
MsgBox Format(金額, "¥#,##0") ' 「¥1,235」と表示されます
End Sub
上記のプログラムは、通貨記号「¥」を追加して、金額を表示します。小数点以下は表示されず、最も近い整数に丸められています。
まとめ
Format関数は、数値や日付を指定された形式で簡単に表示するための強力なツールです。数値をカンマ区切りにしたり、日付の形式を変更したり、通貨記号を追加することが可能です。これにより、データが視覚的にわかりやすくなり、用途に応じた出力ができます。