機能と数式 | VBA | セミナー | オンラインソフト | お問い合わせ | その他
Top > Excel > VBA > VBAの関数

Format関数



構文
Format(expression[,format[,firstdayofweek[,firstweekofyear]]])
引数expressionには、任意の式を指定します。
引数formatは省略可能です。定義済み書式または表示書式指定文字を指定します。
引数firstdayofweekは省略可能です。週の始まりの曜日を指定します。
引数firstweekofyearは省略可能です。年度の第1週を指定します。

解説
引数expressionで指定した式を引数formatで指定した形式で返します。

引数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 日を含む週を年度の第 1 週として扱います(既定値) 
 vbFirstFourDays   2   7 日のうち少なくとも 4 日が新年度に含まれる週を年度の第 1 週として扱います 
 vbFirstFullWeek   3   全体が新年度に含まれる最初の週を年度の第 1 週として扱います 

サンプル
次の例は、セルB2に入力されている日付に、書式記号"aaaa"を適用した結果を表示します。

Sub Sample1()
    MsgBox Format(Range("B2"), "aaaa")
End Sub



Format関数は、あるデータに、セルの表示形式を設定した場合の結果を返す関数です。たとえば、セルB2に「2010/1/9」という日付がシリアル値で入力されているとき、このセルに「ggge年m月d日」という表示形式を設定すると、日付を和暦で表示できます。





これと同じことをマクロ上で行うのがFormat関数です。

Sub Sample2()
    MsgBox Format(Range("B2"), "ggge年m月d日")
End Sub



もちろん、日付以外に、数値の書式記号などを使うことも可能です。

Format関数と、セルの表示形式は、まったく同じではありません。セルの表示形式では実現できないような機能を、Format関数は持っています。詳しくは、下記をご覧ください。




このエントリーをはてなブックマークに追加