構文
記述方法は以下の通りとなります。
Format([値], ”[書式記号]”)
[説明]:
データの表示書式を変換します。
[値] | 任意の値(数値・文字・日付・時刻)を記述します。 |
[書式記号] | [値]を変換する書式記号を記述します。 ※「”」(ダブルクォーテーション)で囲みます。 |
書式記号については以下一覧を参考にして下さい。
■数値の書式記号
書式記号 | 内容 | 数値 | 変換後 |
##.## | 桁があれば表示します。 無い時は表示しません。 |
123.456 | 123.46 |
0000.00 | 桁があれば表示します。 無い時は0を表示します。 |
123.456 | 0123.46 |
#,##0 | 3桁ごとの区切りで表示します。 | 123456789 | 123,456,789 |
0.0 | 小数点で表示します。 | 12.34 | 12.3 |
0.0% | 数値を100倍して%記号で表示します。 | 0.12345 | 12.3% |
■日付の書式記号
書式記号 | 内容 | 日付 | 変換後 |
yyyy | 年を表示します。 | 2020/05/02 | 2020 |
yy | 20 | ||
mm | 月を表示します。 | 05 | |
m | 5 | ||
dd | 日を表示します。 | 02 | |
d | 2 | ||
hh | 時を表示します。 | 09:07:03 | 09 |
h | 9 | ||
nn | 分を表示します。 | 07 | |
n | 7 | ||
ss | 秒を表示します。 | 03 | |
s | 3 | ||
yyyy/mm/dd | 年月日を表示します。 | 2020/05/29 | 2020/05/29 |
yy/mm/dd | 20/05/29 | ||
yyyymmdd | 20200529 | ||
yymmdd | 200529 |
[記述例]:
Format(123.456, "##.##")
Format(123.456, "0000.00")
Format(123456789, "#,##0")
Format(12.34, "0.0")
Format(0.12345, "0.0%")
Format(Now, "yyyy")
Format(Now, "yy")
Format(Now, "mm")
Format(Now, "m")
Format(Now, "dd")
Format(Now, "d")
Format(Now, "yyyy/mm/dd")
Format(Now, "yy/mm/dd")
Format(Now, "yyyymmdd")
Format(Now, "yymmdd")
使い方
使い方について具体的に説明します。
数値の書式記号(#)
数値の書式記号(#)について説明します。
[プログラミング例]:
Sub サンプル()
MsgBox Format(123.456, "##.##")
End Sub
内容は、「数値:123.456を指定した書式(##.##)に変換し、MsgBoxで表示して下さい。」との意味になります。
※上記の記述例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。
[実行例]:
①<実行>ボタンをクリックします。
②結果は以下の様に表示されます。MsgBoxで変換された数値「123.46」が表示されます。
[サンプル]:
上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。
数値の書式記号(#)についての説明は以上です。
数値の書式記号(0)
数値の書式記号(0)について説明します。
[プログラミング例]:
Sub サンプル()
MsgBox Format(123.456, "0000.00")
End Sub
内容は、「数値:123.456を指定した書式(0000.00)に変換し、MsgBoxで表示して下さい。」との意味になります。
※上記の記述例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。
[実行例]:
①<実行>ボタンをクリックします。
②結果は以下の様に表示されます。MsgBoxで変換された数値「0123.46」が表示されます。
[サンプル]:
上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。
数値の書式記号(0)についての説明は以上です。
数値の書式記号(,)
数値の書式記号(,)について説明します。
[プログラミング例]:
Sub サンプル()
MsgBox Format(123456789, "#,##0")
End Sub
内容は、「数値:123456789を指定した書式(#,##0)に変換し、MsgBoxで表示して下さい。」との意味になります。
※上記の記述例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。
[実行例]:
①<実行>ボタンをクリックします。
②結果は以下の様に表示されます。MsgBoxで変換された数値「123,456,789」が表示されます。
[サンプル]:
上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。
数値の書式記号(,)についての説明は以上です。
数値の書式記号(.)
数値の書式記号(.)について説明します。
[プログラミング例]:
Sub サンプル()
MsgBox Format(12.34, "0.0")
End Sub
内容は、「数値:12.34を指定した書式(0.0)に変換し、MsgBoxで表示して下さい。」との意味になります。
※上記の記述例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。
[実行例]:
①<実行>ボタンをクリックします。
②結果は以下の様に表示されます。MsgBoxで変換された数値「12.3」が表示されます。
[サンプル]:
上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。
数値の書式記号(.)についての説明は以上です。
数値の書式記号(%)
数値の書式記号(%)について説明します。
[プログラミング例]:
Sub サンプル()
MsgBox Format(0.12345, "0.0%")
End Sub
内容は、「数値:0.12345を指定した書式(0.0%)に変換し、MsgBoxで表示して下さい。」との意味になります。
※上記の記述例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。
[実行例]:
①<実行>ボタンをクリックします。
②結果は以下の様に表示されます。MsgBoxで変換された数値「12.3%」が表示されます。
[サンプル]:
上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。
数値の書式記号(%)についての説明は以上です。
日付の書式記号(yyyy)
日付の書式記号(yyyy)について説明します。
[プログラミング例]:
Sub サンプル()
MsgBox Format(Now, "yyyy")
End Sub
内容は、「現在日付(2021年04月24日)を指定した書式(yyyy)に変換し、MsgBoxで表示して下さい。」との意味になります。
※上記の記述例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。
[実行例]:
①<実行>ボタンをクリックします。
②結果は以下の様に表示されます。本日が2021/04/24であるため、MsgBoxで変換された年「2021」が表示されます。(※西暦年4桁が表示されます。)
[サンプル]:
上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。
日付の書式記号(yyyy)についての説明は以上です。
日付の書式記号(yy)
日付の書式記号(yy)について説明します。
[プログラミング例]:
Sub サンプル()
MsgBox Format(Now, "yy")
End Sub
内容は、「現在日付(2021年04月24日)を指定した書式(yy)に変換し、MsgBoxで表示して下さい。」との意味になります。
※上記の記述例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。
[実行例]:
①<実行>ボタンをクリックします。
②結果は以下の様に表示されます。本日が2021/04/24であるため、MsgBoxで変換された年「21」が表示されます。(※西暦年下2桁が表示されます。)
[サンプル]:
上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。
日付の書式記号(yy)についての説明は以上です。
日付の書式記号(mm)
日付の書式記号(mm)について説明します。
[プログラミング例]:
Sub サンプル()
MsgBox Format(Now, "mm")
End Sub
内容は、「現在日付(2021年04月24日)を指定した書式(mm)に変換し、MsgBoxで表示して下さい。」との意味になります。
※上記の記述例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。
[実行例]:
①<実行>ボタンをクリックします。
②結果は以下の様に表示されます。本日が2021/04/24であるため、MsgBoxで変換された月「04」が表示されます。(※月が1桁の場合、0付の2桁で表示されます。)
[サンプル]:
上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。
日付の書式記号(mm)についての説明は以上です。
日付の書式記号(m)
日付の書式記号(m)について説明します。
[プログラミング例]:
Sub サンプル()
MsgBox Format(Now, "m")
End Sub
内容は、「現在日付(2021年04月24日)を指定した書式(m)に変換し、MsgBoxで表示して下さい。」との意味になります。
※上記の記述例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。
[実行例]:
①<実行>ボタンをクリックします。
②結果は以下の様に表示されます。本日が2021/04/24であるため、MsgBoxで変換された月「4」が表示されます。
[サンプル]:
上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。
日付の書式記号(m)についての説明は以上です。
日付の書式記号(dd)
日付の書式記号(dd)について説明します。
[プログラミング例]:
Sub サンプル()
MsgBox Format(Now, "dd")
End Sub
内容は、「現在日付(2021年04月24日)を指定した書式(dd)に変換し、MsgBoxで表示して下さい。」との意味になります。
※上記の記述例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。
[実行例]:
①<実行>ボタンをクリックします。
②結果は以下の様に表示されます。本日が2021/04/24であるため、MsgBoxで変換された日「24」が表示されます。(※日が1桁の場合、0付の2桁で表示で表示されます。)
[サンプル]:
上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。
日付の書式記号(dd)についての説明は以上です。
日付の書式記号(d)
日付の書式記号(d)について説明します。
[プログラミング例]:
Sub サンプル()
MsgBox Format(Now, "d")
End Sub
内容は、「現在日付(2021年04月24日)を指定した書式(d)に変換し、MsgBoxで表示して下さい。」との意味になります。
※上記の記述例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。
[実行例]:
①<実行>ボタンをクリックします。
②結果は以下の様に表示されます。本日が2021/04/24であるため、MsgBoxで変換された日「24」が表示されます。
[サンプル]:
上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。
日付の書式記号(d)についての説明は以上です。
日付の書式記号(yyyy/mm/dd)
日付の書式記号(yyyy/mm/dd)について説明します。
[プログラミング例]:
Sub サンプル()
MsgBox Format(Now, "yyyy/mm/dd")
End Sub
内容は、「現在日付(2021年04月25日)を指定した書式(yyyy/mm/dd)に変換し、MsgBoxで表示して下さい。」との意味になります。
※上記の記述例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。
[実行例]:
①<実行>ボタンをクリックします。
②結果は以下の様に表示されます。本日が2021/04/25であるため、MsgBoxで変換された年月日「2021/04/25」が表示されます。
[サンプル]:
上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。
日付の書式記号(yyyy/mm/dd)についての説明は以上です。
日付の書式記号(yy/mm/dd)
日付の書式記号(yy/mm/dd)について説明します。
[プログラミング例]:
Sub サンプル()
MsgBox Format(Now, "yy/mm/dd")
End Sub
内容は、「現在日付(2021年04月25日)を指定した書式(yy/mm/dd)に変換し、MsgBoxで表示して下さい。」との意味になります。
※上記の記述例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。
[実行例]:
①<実行>ボタンをクリックします。
②結果は以下の様に表示されます。本日が2021/04/25であるため、MsgBoxで変換された年月日「21/04/25」が表示されます。
[サンプル]:
上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。
日付の書式記号(yy/mm/dd)についての説明は以上です。
日付の書式記号(yyyymmdd)
日付の書式記号(yyyymmdd)について説明します。
[プログラミング例]:
Sub サンプル()
MsgBox Format(Now, "yyyymmdd")
End Sub
内容は、「現在日付(2021年04月25日)を指定した書式(yyyymmdd)に変換し、MsgBoxで表示して下さい。」との意味になります。
※上記の記述例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。
[実行例]:
①<実行>ボタンをクリックします。
②結果は以下の様に表示されます。本日が2021/04/25であるため、MsgBoxで変換された年月日「20210425」が表示されます。
[サンプル]:
上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。
日付の書式記号(yyyymmdd)についての説明は以上です。
日付の書式記号(yymmdd)
日付の書式記号(yymmdd)について説明します。
[プログラミング例]:
Sub サンプル()
MsgBox Format(Now, "yymmdd")
End Sub
内容は、「現在日付(2021年04月25日)を指定した書式(yymmdd)に変換し、MsgBoxで表示して下さい。」との意味になります。
※上記の記述例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。
[実行例]:
①<実行>ボタンをクリックします。
②結果は以下の様に表示されます。本日が2021/04/25であるため、MsgBoxで変換された年月日「210425」が表示されます。
[サンプル]:
上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。
日付の書式記号(yymmdd)についての説明は以上です。
プログラミング(サンプル)
プログラミング事例を紹介します。
おわりに
今回はFormat関数の使い方について説明しました。データの書式変換はプログラミン中で頻繁に行われます。是非覚えておいて下さい。