Format関数の使い方を紹介します。
Format関数は名前の通り、渡されたデータをフォーマットして返す関数です。
Format(Expression, [Format], [FirstDayOfWeek], [FirstWeekOfYear])
引数 | 説明 |
Expression | 必ず指定が必要です。 フォーマットしたい値を設定します。 |
Format | 省略可能です。 Expressionをどのようにフォーマットしたいかを設定します |
FirstDayOfWeek | 省略可能です。 週の最初の曜日を指定する定数です。 |
FirstWeekOfYear | 省略可能です。 年内で最初の週を指定する定数です。 |
よく使う使い方を以下に記載します。
日付・時間のフォーマット
Option Explicit
Sub FormatDate()
MsgBox ("now: " & Now)
Dim formattedDate As String
formattedDate = Format(Now, "yyyy年mm月dd日")
MsgBox ("formattedDate : " & formattedDate)
Dim formattedTime As String
formattedTime = Format(Now, "hh時mm分ss秒")
MsgBox ("formattedTime: " & formattedTime)
End Sub
現在の日付を “yyyy年mm月dd日” のフォーマットで表示、
現在の時刻を “hh時mm分ss秒” のフォーマットで表示するプログラムです
1行目:変数の宣言を強制
3行目:FormatDateという名前で関数を宣言
4行目:Now関数で現在のシステム日時を取得・表示(now: 2024/10/09 21:00:00)
6行目:formattedDateという名前で文字列(String)の変数を用意
7行目:formattedDateにシステム日時をフォーマット(yyyy年mm月dd日)した結果を格納
9行目:formattedDateの値を表示(formattedDate: 2024年10月09日)
11行目:formattedTimeという名前で文字列(String)の変数を用意
12行目:formattedTimeにシステム日時をフォーマット(hh時mm分ss秒)した結果を格納
14行目:formattedTimeの値を表示(formattedTime: 21:00:00)
15行目:関数の終わり
その他、日付のフォーマット記号は以下に記載があります。
https://learn.microsoft.com/ja-jp/office/vba/language/reference/user-interface-help/format-function-visual-basic-for-applications#date-symbols
時刻のフォーマット記号は以下です。
https://learn.microsoft.com/ja-jp/office/vba/language/reference/user-interface-help/format-function-visual-basic-for-applications#time-symbols
数値のフォーマット
Option Explicit
Sub FormatInt()
Dim price As Long
price = 1980000
Dim formattedPrice As String
formattedPrice = Format(price, "#,##0")
MsgBox ("formattedPrice: " & formattedPrice)
End Sub
price(1980000)を “#,##0” のフォーマットで表示するプログラムです
1行目:変数の宣言を強制
3行目:FormatIntという名前で関数を宣言
4行目:priceという名前で数値(Long)の変数を用意
5行目:priceに1980000(数値の値)をセット
7行目:formattedPriceという名前で文字列(String)の変数を用意
8行目:formattedPriceにpriceをフォーマット(#,##0)した結果を格納
10行目:formattedPriceの値を表示(formattedPrice: 1,980,000)
11行目:関数の終わり
その他
Option Explicit
Sub FormatOther()
Dim id As Long
id = 1
Dim formattedId As String
formattedId = Format(id, "000")
MsgBox ("formattedId: " & formattedId)
End Sub
id(1)を “000” のフォーマットで表示するプログラムです
1行目:変数の宣言を強制
3行目:FormatOtherという名前で関数を宣言
4行目:idという名前で数値(Long)の変数を用意
5行目:idに1(数値の値)をセット
7行目:formattedIdという名前で文字列(String)の変数を用意
8行目:formattedIdにidをフォーマット(000)した結果を格納
10行目:formattedIdの値を表示(formattedId: 001)
11行目:関数の終わり