|
[VB&VBA][日付時刻 日付/時刻表示書式指定文字の使用例] |
|
|
Option Explicit
'(VB:Help)
'----------------------------------------------------
'yy/mm/dd = 58/12/07
'mm -d = 12 - 7
'd -mmmm - yy = 7 - December - 58
'd mmmm = 7 December
'mmmm yy = December 58
'ddddd(aaa) = 58/12/07(日)
'dddddd = 1958 年 12 月 7 日 日曜日
'ggge年m月d日(aaaa) = 昭和33年12月7日(日曜日)
'hh:mm AM/PM = 08:50 PM
'h:mm:ss a/p = 8:50:35 p
'h:mm = 20:50
'h:mm:ss = 20:50:35
'm/d/yy h:mm = 12/7/58 20:50
'----------------------------------------------------
'****************************************************
'日付/時刻表示書式指定文字 (Format 関数)
'****************************************************
'c
'ddddd および t t t t t の書式で表した日付と時刻を、日付、時刻の順序で返します。
'指定された値に小数部がない場合は日付のみ、整数部がない場合は時刻のみを表す文字列を返します。
Private Sub testc()
MsgBox Format(Now, "c")
Debug.Print Format(Now, "c") '出力例[2009/09/18 15:19:58]
End Sub
'ddd
'曜日を英語 (省略形) で返します (Sun 〜 Sat)。
Private Sub testddd()
MsgBox Format(Now, "ddd")
Debug.Print Format(Now, "ddd") '出力例[Fri]
End Sub
'aaa
'曜日を日本語 (省略形) で返します (日〜土)。
Private Sub testaaa()
MsgBox Format(Now, "aaa")
Debug.Print Format(Now, "aaa") '出力例[金]
End Sub
'dddd
'曜日を英語で返します (Sunday 〜 Saturday)。
Private Sub testdddd()
MsgBox Format(Now, "dddd")
Debug.Print Format(Now, "dddd") '出力例[Friday]
End Sub
'aaaa
'曜日を日本語で返します (日曜日〜土曜日)。
Private Sub testaaaa()
MsgBox Format(Now, "aaaa")
Debug.Print Format(Now, "aaaa") '出力例[金曜日]
End Sub
'ddddd
'年、月、日を含む短い形式 (コントロール パネルで設定) で表した日付を返します。
'既定の短い日付形式は、m/d/yy です。
Private Sub testddddd()
MsgBox Format(Now, "ddddd")
Debug.Print Format(Now, "ddddd") '出力例[2009/09/18]
End Sub
'dddddd
'年、月、日を含む長い形式 (コントロール パネルで設定) で表した日付を返します。
'既定の長い日付形式は mmmm dd, yyyy です。
Private Sub testdddddd()
MsgBox Format(Now, "dddddd")
Debug.Print Format(Now, "dddddd") '出力例[2009年9月18日]
End Sub
'w
'曜日を表す数値を返します (日曜日が 1、土曜日が 7 となります)。
Private Sub testw()
MsgBox Format(Now, "w")
Debug.Print Format(Now, "w") '出力例[6]
End Sub
'ww
'その日が一年のうちで何週目に当たるかを表す数値を返します (1 〜 54)。
Private Sub testww()
MsgBox Format(Now, "ww")
Debug.Print Format(Now, "ww") '出力例[38]
End Sub
'mmm
'月の名前を英語 (省略形) の文字列に変換して返します (Jan 〜 Dec)。
Private Sub testmmm()
MsgBox Format(Now, "mmm")
Debug.Print Format(Now, "mmm") '出力例[Sep]
End Sub
'mmmm
'月の名前を英語で返します (January 〜 December)。
Private Sub testmmmm()
MsgBox Format(Now, "mmmm")
Debug.Print Format(Now, "mmmm") '出力例[September]
End Sub
'oooo
'月の名前を日本語で返します (1 月 〜 12 月)。
Private Sub testoooo()
MsgBox Format(Now, "oooo")
Debug.Print Format(Now, "oooo") '出力例[9月]
End Sub
'q
'1 年のうちで何番目の四半期に当たるかを表す数値を返します (1 〜 4)。
Private Sub testq()
MsgBox Format(Now, "q")
Debug.Print Format(Now, "q") '出力例[3]
End Sub
'g
'年号の頭文字を返します (M、T、S、H)。
Private Sub testg()
MsgBox Format(Now, "g")
Debug.Print Format(Now, "g") '出力例[H]
End Sub
'gg
'年号の先頭の 1 文字を漢字で返します (明、大、昭、平)。
Private Sub testgg()
MsgBox Format(Now, "gg")
Debug.Print Format(Now, "gg") '出力例[平]
End Sub
'ggg
'年号を返します (明治、大正、昭和、平成)。
Private Sub testggg()
MsgBox Format(Now, "ggg")
Debug.Print Format(Now, "ggg") '出力例[平成]
End Sub
'e
'年号に基づく和暦の年を返します。1 桁の場合、先頭に 0 が付きません。
Private Sub teste()
MsgBox Format(Now, "e")
Debug.Print Format(Now, "e") '出力例[21]
End Sub
'EE
'年号に基づく和暦の年を 2 桁の数値を使って返します。1 桁の場合、先頭に 0 が付きます。
Private Sub testee()
MsgBox Format("1991/09/18", "ee")
Debug.Print Format("1991/09/18", "ee") '出力例[03]
End Sub
'y
'1 年のうちで何日目に当たるかを数値で返します (1 〜 366)。
Private Sub testy()
MsgBox Format("1991/09/18", "y")
Debug.Print Format("1991/09/18", "y") '出力例[261]
End Sub
'yy
'西暦の年を下 2 桁の数値で返します (00 〜 99)。
Private Sub testyy()
MsgBox Format("1991/09/18", "yy")
Debug.Print Format("1991/09/18", "yy") '出力例[91]
End Sub
'yyyy
'西暦の年を 4 桁の数値で返します (100 〜 9999)。
Private Sub testyyyy()
MsgBox Format("1991/09/18", "yyyy")
Debug.Print Format("1991/09/18", "yyyy") '出力例[1991]
End Sub
'h
'時間を返します。1 桁の場合、先頭に 0 が付きません (0 〜 23)。
Private Sub testh()
MsgBox Format("2009/09/18 15:19:58", "h")
Debug.Print Format("2009/09/18 15:19:58", "h") '出力例[15]
End Sub
'hh
'時間を返します。1 桁の場合、先頭に 0 が付きます (00 〜 23)。
Private Sub testhh()
MsgBox Format("2009/09/18 05:19:58", "hh")
Debug.Print Format("2009/09/18 05:19:58", "hh") '出力例[05]
End Sub
'N
'分を返します。1 桁の場合、先頭に 0 が付きません (0 〜 59)。
Private Sub testn()
MsgBox Format("2009/09/18 05:19:58", "n")
Debug.Print Format("2009/09/18 05:19:58", "n") '出力例[19]
End Sub
'nn
'分を返します。1 桁の場合、先頭に 0 が付きます (00 〜 59)。
Private Sub testnn()
MsgBox Format("2009/09/18 05:09:58", "nn")
Debug.Print Format("2009/09/18 05:09:58", "nn") '出力例[09]
End Sub
's
'秒を返します。1 桁の場合、先頭に 0 が付きません (0 〜 59)。
Private Sub tests()
MsgBox Format("2009/09/18 05:09:58", "s")
Debug.Print Format("2009/09/18 05:09:58", "s") '出力例[58]
End Sub
'ss
'秒を返します。1 桁の場合、先頭に 0 が付きます (00 〜 59)。
Private Sub testss()
MsgBox Format("2009/09/18 05:09:08", "ss")
Debug.Print Format("2009/09/18 05:09:08", "ss") '出力例[08]
End Sub
'tttttt
'コントロール パネルで設定されている形式で時刻を返します。
'先頭に 0 を付けるオプションが選択されていて、時刻が午前または午後 10 時以前の場合、
'先頭に 0 が付きます。既定の形式は、h:mm:ss です。
Private Sub testtttt()
MsgBox Format("2009/09/18 05:09:08", "ttttt")
Debug.Print Format("2009/09/18 05:09:08", "ttttt") '出力例[5:09:08]
End Sub
'AM/PM
'時刻が正午以前の場合は大文字で AM を返し、正午〜午後 11 時 59 分の間は大文字で PM を返します。
Private Sub testAMPM()
MsgBox Format("2009/09/18 05:09:08", "AM/PM")
Debug.Print Format("2009/09/18 05:09:08", "AM/PM") '出力例[AM]
End Sub
'am/pm
'時刻が正午以前の場合は小文字で am を返し、正午〜午後 11 時 59 分の間は小文字で pm を返します。
Private Sub testAMPM2()
MsgBox Format("2009/09/18 05:09:08", "am/pm")
Debug.Print Format("2009/09/18 05:09:08", "am/pm") '出力例[am]
End Sub
'A/P
'時刻が正午以前の場合は大文字で A を返し、正午〜午後 11 時 59 分の間は大文字で P を返します。
Private Sub testAP()
MsgBox Format("2009/09/18 05:09:08", "A/P")
Debug.Print Format("2009/09/18 05:09:08", "A/P") '出力例[A]
End Sub
'a/p
'時刻が正午以前の場合は小文字で a を返し、正午〜午後 11 時 59 分の間は小文字で p を返します。
Private Sub testAP2()
MsgBox Format("2009/09/18 05:09:08", "a/p")
Debug.Print Format("2009/09/18 05:09:08", "a/p") '出力例[a]
End Sub
'AMPM
'"12 時間制" が選択されていて、時刻が正午以前の場合は午前を表すリテラル文字列を、
'正午〜午後 11 時 59 分の間は午後を表すリテラル文字列を返します。
'これらの文字列の設定および "12 時間制" の選択は、コントロール パネルで行います。
'AMPM は大文字、小文字のどちらでも指定できます。既定の形式は、AM/PM です。
Private Sub testAMPM3()
MsgBox Format("2009/09/18 05:09:08", "AMPM")
Debug.Print Format("2009/09/18 05:09:08", "AMPM") '出力例[午前]
End Sub
'定義済み日付/時刻書式 (Format 関数)
'
'General Date
'日付または時刻、あるいはその両方を返します。整数部と小数部の両方を含む数値を指定すると、
'日付と時刻の両方を表す文字列 (たとえば 96/4/3 5:34) に変換します。小数部がない場合には日付のみ
'(たとえば 96/4/3)、整数部がない場合には時刻のみ (たとえば 5:34) を表す文字列に変換します。
'日付と時刻の表示形式はコントロール パネルの設定により決まります。
Private Sub testGeneralDate()
MsgBox Format("2009/09/18 05:09:08", "General Date")
Debug.Print Format("2009/09/18 05:09:08", "General Date") '出力例[2009/09/18 5:09:08]
End Sub
'Long Date
'日付の長い形式 (コントロール パネルの設定) で表した日付を返します。
Private Sub testLongDate()
MsgBox Format("2009/09/18 05:09:08", "Long Date")
Debug.Print Format("2009/09/18 05:09:08", "Long Date") '出力例[2009年9月18日]
End Sub
'Medium Date
'簡略形式で表した日付を返します。ホスト アプリケーションで使用されます。
Private Sub testMediumDate()
MsgBox Format("2009/09/18 05:09:08", "Medium Date")
Debug.Print Format("2009/09/18 05:09:08", "Medium Date") '出力例[09-09-18]
End Sub
'Short Date
'日付の短い形式 (コントロール パネルの設定) で表した日付を返します。
Private Sub testShortDate()
MsgBox Format("2009/09/18 05:09:08", "Short Date")
Debug.Print Format("2009/09/18 05:09:08", "Short Date") '出力例[2009/09/18]
End Sub
'Long Time
'時刻、分、秒を含む形式で表した時刻を返します。
Private Sub testLongTime()
MsgBox Format("2009/09/18 05:09:08", "Long Time")
Debug.Print Format("2009/09/18 05:09:08", "Long Time") '出力例[5:09:08]
End Sub
'Medium Time
'時間と分を 12 時間制で表した時刻を返します。同時に午前 (AM)、午後 (PM) も追加します。
Private Sub testMediumTime()
MsgBox Format("2009/09/18 05:09:08", "Medium Time")
Debug.Print Format("2009/09/18 05:09:08", "Medium Time") '出力例[05:09 午前]
End Sub
'Short Time
'時間と分を 24 時間制で表した時刻 (たとえば 17:45) を返します。
Private Sub testShortTime()
MsgBox Format("2009/09/18 05:09:08", "Short Time")
Debug.Print Format("2009/09/18 05:09:08", "Short Time") '出力例[05:09]
End Sub
|
|
|