VBA 書式一覧Format

投稿者: | 2021年9月7日
excelアイコン

エクセルバージョン

マイクロソフト365

 

今回はVBAで書式の変更ができるFormat関数についてと記号一覧です。

それではいってみましょう!

 

Format関数

書式 Variant (String) を返します。

構文

Format(Expression,[Format],[FirstDayOfWeek],[FirstWeekOfYear])

[ ]は省略可です。

引数

Format必須/省略可詳細
Expression
(第1引数)
必須対象となる文字や数値を指定。
Format
(第2引数)
省略可書式を指定。
FirstDayOfWeek
(第3引数)
省略可定数や値で、週の最初の曜日を指定。詳細
FirstWeekOfYear
(第4引数)
省略可定数や値で、最初の週を指定。詳細

FirstDayOfWeek(第3引数)詳細

定数説明
vbUseSystem0NLS API 設定を使用します。
vbSunday1日曜日 (既定)
vbMonday2月曜日
vbTuesday3火曜日
vbWednesday4水曜日
vbThursday5木曜日
vbFriday6金曜日
vbSaturday7土曜日

FirstWeekOfYear(第4引数)詳細

定数説明
vbUseSystem0NLS API 設定を使用します。
vbFirstJan111月1 日が含まれる週から開始します (既定)。
vbFirstFourDays24日以上が含まれる最初の週が年の第 1 週目になります。
vbFirstFullWeek31週間全体が含まれる最初の週がその年の第1週目になります。

日付

年と何日目

記号詳細サンプル結果
y年初(1/1)から何日目
(1〜366)。
Format(“2021/8/27”, “y”)239
yy西暦下2桁
(00〜99)。
Format(“2021/8/27”, “yy”)21
yyyy西暦3桁または4桁の西暦
(100 〜 9999)。
Format(“2021/8/27”, “yyyy”)2021

記号詳細サンプル結果
m
(1〜12 )。
Format(“2021/8/27”, “m”)8
mm月2桁
(01~12)。
Format(“2021/8/27”, “mm”)08
mmm英語頭文字 3 文字
(Jan~Dec)。
Format(“2021/8/27”, “mmm”)Aug
mmmm英語
(January~December) 。
Format(“2021/8/27”, “mmmm”)August

曜日や週

記号詳細サンプル結果
w曜日(1〜7)
1(日)2(月),3(火),4(水),5(木),6(金),7(土)。
Format(“2021/8/27”, “w”)6
ww年初(1/1)から何週目
(1〜53)。
Format(“2021/8/27”, “ww”)35
ddd(日~土)の形式。Format(“2021/8/27”, “ddd”)Fri
dddd(日曜日~土曜日)の形式。Format(“2021/8/27”, “dddd”)Friday

四半期

記号詳細サンプル結果
q四半期。Format(“2021/8/27”, “q”)3

時間

記号詳細サンプル結果
h時(0〜23)。Format(“2021/8/27  8:01:05”, “h”)8
hh時2桁表示(00〜23)。Format(“2021/8/27  8:01:05”, “hh”)08

記号詳細サンプル結果
m分(0〜23)
hとセットで使用→h:m。
Format(“2021/8/27  8:01:05”, “m”)8:1
mm分2桁(00〜23)
hとセットで使用→h:mm。
Format(“2021/8/27  8:01:05”, “mm”)8:01
n分(0〜59)。Format(“2021/8/27  8:01:05”, “n”)1
nn分2桁(00〜59)。Format(“2021/8/27  8:01:05”, “nn”)01

記号詳細サンプル結果
s秒(0〜 59)。Format(“2021/8/27  8:01:05”, “s”)5
ss秒2桁(00〜59)。Format(“2021/8/27  8:01:05”, “ss”)05

AM/PM表示

記号詳細サンプル結果
AM/PM12時間形式の大文字AM/PM。Format(Now(), “h:m:s AM/PM”)1:30:57 PM
am/pm12時間形式の小文字am/pm。Format(Now(), “h:m:s am/pm”)1:34:44 pm
A/P12時間形式の大文字A/P。Format(Now(), “h:m:s A/P”)1:35:30 P
a/p12時間形式の小文字a/p。Format(Now(), “h:m:s a/p”)1:36:8 p

その他

記号説明サンプル結果
:時間の区切り。Format(Now(), “h:mm:ss”)13:23:23
/日付の区切り。Format(Now(), “m/d”)8/26

名前付き日付と時刻の書式

書式名説明サンプル結果
General Date日付か時刻、または両方を表示。Format(Now(), “General Date”)2021/08/26 10:36:20
Long Date長い日付。Format(Now(), “Long Date”)2021年8月26日
Medium Dateホスト アプリケーションの言語バージョン日付。Format(Now(), “Medium Date”)21-08-26
Short Date短い日付。Format(Now(), “Short Date”)2021/08/26
Long Time長い時間形式の時間。
時、分、秒。
Format(Now(), “Long Time”)10:34:10
Medium Time時間と分を、12時間形式のAM/PM。 Format(Now(), “Medium Time”)10:35 午前
Short Time24時間の形式。Format(Now(), “Short Time”)10:35

名前付き数値の書式

書式名説明サンプル結果
General Number桁区切りなしの数値。Format(100000000, “General Number”)100000000
Currency桁区切りありの通貨。Format(100000000, “Currency”)¥100,000,000
Fixed桁区切りなし。
小数部 2 桁の数値。
Format(100000000, “Fixed”)100000000.00
Standard桁区切りあり。
小数部 2 桁の数値。
Format(100000000, “Currency”)100,000,000.00
Percentパーセント記号 (%)。
小数部は 2 桁。
Format(1, “Percent”)100.00%
Scientific標準の指数表記。Format(1, “Scientific”)1.00E+00
Yes/No0の場合はNo 。
それ以外は Yes 。
Format(1, “Yes/No”)Yes
True/False0の場合はFalse。
それ以外はTrue。
Format(1, “True/False”)TRUE
On/Off0の場合はOff。
それ以外はOn。
Format(1, “On/Off”)On

 

数値の書式

記号説明サンプル結果
桁数の指定可能。
桁数が足りない時は非表示。
Format(“12.1”, “###.###”)12.1
0桁数の指定可能。
桁数が足りない時は0。
Format(“12.1”, “#.00”)12.10
,(カンマ)1000で桁区切り。Format(100000000, “#,#”)100,000,000
.(ピリオド)小数点。Format(10.1, “#.#”)10.1

文字の書式

記号説明サンプル結果
@書き方 → “文字@”。Format(“サンプル”, “(株)@”)(株)サンプル
<小文字に変換。Format(“A”, “<“)a
>大文字に変換。Format(“a”, “>”)A

 

ユーザー定義で書式を変更したい場合は下記

書式のユーザー定義記号一覧

 

まとめ

VBAで書式を変更する時は是非参考にしてみてください!

以上です。