OR
誰でも自由に記事を投稿・編集できるオープンリファレンス
記事ID:454
区分:プログラム  |  分類:VB  |  最終更新日:2014/06/20
クリエイティブ・コモンズ 表示-継承ライセンス 2.1
【VB】Format関数
関連タグ:vba, vb6, vb.net, 関数, フォーマット, 書式
このエントリーをはてなブックマークに追加      
本文
履歴
編集
閲覧数: 247,793
VB6関連技術まとめ > VB関数一覧 > 【VB】Format関数

文字列や数字、日付などを指定した書式に変換する関数です。

関数仕様

構文 Format(expression[, format[, firstdayofweek[, firstweekofyear]]])
引数
引数 省略 説明
expression 不可

変換元となる任意の式を指定します。

format

定義済み書式または表示書式指定文字を指定します。

firstdayofweek

週の 1 日目を指定する定数を指定します。

指定できる定数は下記を参照下さい。

firstweekofyear

年の第 1 週を指定する定数を指定します。

指定できる定数は下記を参照下さい。

戻り値 バリアント型(内部処理形式 String の Variant)

 

この関数は、引数で指定した値を任意の書式(フォーマット)に変換し、結果をバリアント型(内部処理形式 String の Variant)で返します。 第一引数に変換元となる値を指定し、第二引数に書式を指定します。 第三引数と第四引数は日付の書式変換を行う際に、カレンダーの定義をする為に使用しますが、通常、デフォルトのカレンダー定義を使用する場合は、使用しません。 また、この関数は第二引数の書式も省略することができ、省略した場合、第一引数で指定された値が、そのまま文字列に変換されて出力されます。 これは Str 関数を使用した場合と同じ結果になります。(ただし、数値を文字列に変換した場合、Str 関数は符号用のスペースが先頭に付加されますが、Format 関数はそのスペースが付加されません)

 

引数「format」に指定できる書式、「firstdayofweek」に指定できる定数、「firstweekofyear」に指定できる定数は、それぞれ以下になります。

 

【format に指定できる書式】

数値関連のフォーマット (例データを「12.345」と仮定します)
書式 フォーマット例 備考
0

000.00

012.35

桁のプレースホルダ。 数字またはゼロを表示します。 指定された桁よりも値の桁が少ない場合は、足りない分 0 が付加されます。 指定された桁よりも値の桁が大きい場合は、整数部分は値がそのまま表示され、小数部分は指定の桁で丸められます。

#

###.##

 12.35

桁のプレースホルダ。 数字を表示するか、何も表示しません。 基本的には 0 書式と同じ動作をしますが、桁が少ない場合でも 0 は付加されません。

.

0.0

12.3

小数点のプレースホルダ。

%

0.0%

1234.5%

パーセントのプレースホルダ。 値を 100 倍し、「%」を数値の後ろに付加します。

,

0,0

1,000,000

3 桁ごとの区切り記号。 桁のプレースホルダ(0 または #)で囲まれている場合に 3 桁区切りで値を表示します。 また、この記号は、少数点の直ぐ左(または文字列の一番右)に記述された場合は、値を1000で割ることを意味します。 割った値は必要に応じて丸められます。(左記例は 1000000 を値とした場合の例です)

 0,0,.0

1,000.0

E- E+

e- e+

0.0E-00

5.0E-01

指数形式。 この記号の左側に、桁プレースホルダー(0 または #)がある場合、値は数値と指数部の間にこの記号を挿入して指数形式で表示されます。(左記例は 0.5 を値とした場合の例です)

- + $ ( )

$#.##

$12.35

リテラル文字。 左記の文字は入力した通りに表示されます。(アルファベットや日本語などもそのまま表示されます)

文字列関連のフォーマット
書式 フォーマット例 備考 
@ @@@-@@@ ABC-DEF

桁のプレースホルダ。 記号に合わせて文字を表示します。(左記例は ABCDEF を値とした場合の例です)

> > ABCDEF

文字列を大文字に変換します。(左記例は abcdef を値とした場合の例です)

< < abcdef

文字列を小文字に変換します。(左記例は ABCDEF を値とした場合の例です)

日付関連のフォーマット (例データを「2012/01/02 (月) 3:4:5」と仮定します)
書式 説明 備考
通算日数 2 1 年のうちで何日目に当たるかを数値で返します。 (1 ~ 366)
yy 西暦年(下2桁) 12 西暦の年を下 2 桁を数値で返します。 (00 ~ 99)
yyyy 西暦年 2012 西暦の年を 4 桁の数値で返します。 (100 ~ 9999)
g 年号(アルファベット) H 年号の頭文字をアルファベットで返します。 (M、T、S、H)
gg 年号(日本語略称) 年号の頭文字を漢字で返します。 (明、大、昭、平)
ggg 年号(日本語) 平成 年号を返します。 (明治、大正、昭和、平成)
e 和暦 24 和暦の年を返します。1 桁の場合、先頭に 0 が付きません。
ee 和暦(2桁) 24 和暦の年を返します。1 桁の場合、先頭に 0 が付きます。
m 1

月を表す数値を返します。1 桁の場合、先頭に 0 が付きません。 (1 ~ 12)

ただし、h や hh の直後に mm を指定した場合、月ではなく分と解釈されます。

mm 月(2桁) 01

月を表す数値を返します。1 桁の場合、先頭に 0 が付きます。 (01 ~ 12)

ただし、h や hh の直後に mm を指定した場合、月ではなく分と解釈されます。

mmm 月(英語略称) Jan 月の名前を英語 (略称) で返します。 (Jan ~ Dec)
mmmm 月(英語) January 月の名前を英語で返します。 (January ~ December)
q 四半期 1 1 年のうちで何番目の四半期に当たるかを表す数値を返します。 (1 ~ 4)
d 2 日付を返します。1 桁の場合、先頭に 0 が付きません。 (1 ~ 31)
dd 日(2桁) 02 日付を返します。1 桁の場合、先頭に 0 が付きます。 (01 ~ 31)
ddd 曜日(英語略称) Mon 曜日を英語 (略称) で返します。 (Sun ~ Sat)
dddd 曜日(英語) Monday 曜日を英語で返します。 (Sunday ~ Saturday)
ddddd 年月日(短い形式) 2012/01/02() コントロールパネルで設定された「短い形式」で表した日付を返します。
dddddd 年月日(長い形式) 2012年1月2日() コントロールパネルで設定された「長い形式」で表した日付を返します。
aaa 曜日(日本語略称) 曜日を日本語 (略称) で返します。 (日~土)
aaaa 曜日(日本語) 月曜日 曜日を日本語で返します。 (日曜日~土曜日)
w 曜日(数値) 2 曜日を表す数値を返します。 (1 ~ 7)
ww 通算週数 1 1 年のうちで何週目に当たるかを数値で返します。 (1 ~ 54)
h 3 時間を返します。1 桁の場合、先頭に 0 が付きません。 (0 ~ 23)
hh 時(2桁) 03 時間を返します。1 桁の場合、先頭に 0 が付きます。 (00 ~ 23)
n 4 分を返します。1 桁の場合、先頭に 0 が付きません。 (0 ~ 59)
nn 分(2桁) 04 分を返します。1 桁の場合、先頭に 0 が付きます。 (00 ~ 59)
s 5 秒を返します。1 桁の場合、先頭に 0 が付きません。 (0 ~ 59)
ss 秒(2桁) 05 秒を返します。1 桁の場合、先頭に 0 が付きます。 (00 ~ 59)
ttttt 時刻 3:04:05() コントロールパネルで設定された「時刻」で表した時刻を返します。
AM/PM AM/PM AM 時刻が正午以前の場合は AM を返し、正午~午後 11 時 59 分の間は PM を返します。
am/pm am/pm am 時刻が正午以前の場合は am を返し、正午~午後 11 時 59 分の間は pm を返します。
AMPM 午前/午後 午前() コントロールパネルで設定された「AM/PM」で表したAM/PMを返します。

コントロールパネルでの設定に影響されるため、環境によって値は異なります。

 

【firstdayofweek に指定できる定数】

定数 内容
vbUseSystem 0 各国語対応APIの設定値を使用します。
vbSunday 1 日曜を週の第一日目に指定します。(規定値)
vbMonday 2 月曜を週の第一日目に指定します。
vbTuesday 3 火曜を週の第一日目に指定します。
vbWednesday 4 水曜を週の第一日目に指定します。
vbThursday 5 木曜を週の第一日目に指定します。
vbFriday 6 金曜を週の第一日目に指定します。
vbSaturday 7 土曜を週の第一日目に指定します。

 

【firstweekofyear に指定できる定数】

定数 内容
vbUseSystem 0

各国語対応APIの設定値を使用します。

vbFirstJan1 1

1 月 1 日を含む週を第一週目に指定します。(規定値)

vbFirstFourDays 2

年の 4 日以上が含まれる最初の週を第一週目に指定します。

vbFirstFullWeek 3

年のうち、7 日が含まれる最初の週を第一週目に指定します。

関連記事
外部リンク
外部リンクはありません。
- 記事検索 -