日付操作関数【Access/Excel】

関数【Access_Excel】 05.関数
関数【Access_Excel】

Date関数/Time関数/Now関数

Date関数は現在の日付、Time関数は現在の時刻、Now関数は現在の日時を返します。
【書式】※引数なし
Date
Time
Now

Sub Date_Time_Now()
    MsgBox Date 'xxxx/xx/xx(現在の日付) を返します。
    MsgBox Time 'xx:xx:xx(現在の時刻) を返します。
    MsgBox Now  'xxxx/xx/xx xx:xx:xx(現在の日時) を返します。
End Sub

Year関数/Month関数/Day関数

Year関数は日付から「年」をMonth関数は日付から「月」をDay関数は日付から「日」をそれぞれ返します。
【書式】
Year(日付)
Month(日付)
Day(日付)

Sub Year_Month_Day()
    MsgBox Year(#2/3/2001#)     '2001 を返します。
    MsgBox Month(#2/3/2001#)    '2 を返します。
    MsgBox Day(#2/3/2001#)      '3 を返します。
End Sub

Hour関数/Minute関数/Second関数

Hour関数は時刻から「時」をMinute関数は時刻から「分」をSecond関数は時刻から「秒」をそれぞれ返します。
【書式】
Hour(時刻)
MInute(時刻)
Second(時刻)

Sub Hour_Minute_Second()
    MsgBox Hour(#1:02:03 AM#)   '1 を返します。
    MsgBox Minute(#1:02:03 AM#) '2 を返します。
    MsgBox Second(#1:02:03 AM#) '3 を返します。
End Sub

Weekday関数/WeekdayName関数

Weekday関数は日付に対応する曜日を数値で返します。WeeklyName関数は曜日に対応する数値を曜日名に変換します。
【書式】
Weekday(日付)
WeekdayName(曜日を表す数値,[曜日名の省略])

Sub Weekday_WeekdayName()
    MsgBox Weekday(#2/3/2001#)     '7 を返します。
    '※1:日 2:月 3:火 4:水 5:木 6:金 7:土
    MsgBox WeekdayName(Weekday(#2/3/2001#))         '土曜日 を返します。
    MsgBox WeekdayName(Weekday(#2/3/2001#), False)  '土曜日 を返します。
    MsgBox WeekdayName(Weekday(#2/3/2001#), True)   '土 を返します。
End Sub

DateAdd関数

日付や時刻に加算・減算した結果を返します。
【書式】
DateAdd(時間単位,加算減算する時間,日時)
それぞれの引数に対する主な指定は下表の通りです。

引数説明
時間単位加算・減算する時間単位を指定する。
加算・減算する時間加算・減算する時間。負の数は減算。
日時元になる値の日付を指定する。
※時間単位の指定できる設定値
yyyy(年)・m(月)・y(年間通算日)・d(日)・w(週日)・ww(週)・h(時)・n(分)・s(秒)
Sub Dateadd_1()
    MsgBox DateAdd("yyyy", 1, #2/3/2001#)   '2002/02/03 を返します。
    MsgBox DateAdd("m", -1, #2/3/2001#)     '2001/01/03 を返します。
End Sub

DateDiff関数

指定した2つの日付・時刻の間隔を返します。
【書式】
DateDiff(時間単位,日付1,日付2)

引数説明
時間単位※DateAddと同じ
日付1間隔を計算する1つ目の日付
日付2間隔を計算する2つ目の日付
Sub DateDiff_1()
    MsgBox DateDiff("yyyy", #2/3/2001#, #4/5/2003#) '2 を返します。
    MsgBox DateDiff("m", #2/3/2001#, #4/5/2003#)    '26 を返します。
End Sub

DatePart関数

日付・時刻から時間単位を取り出して返します。
【書式】
DatePart(時間単位,日時)

引数説明
時間単位※DateAddと同じ
日時元になる値の日時を指定する
Sub DatePart_1()
    MsgBox DatePart("yyyy", #2/3/2001#) '2001 を返します。
    MsgBox DatePart("d", #2/3/2001#)    '3 を返します。
End Sub

DateSerial関数

指定した年・月・日に対応する数値から日付を返します。
【書式】
DateSerial(年,月,日)

Sub DateSerial_1()
    MsgBox DateSerial(2001, 2, 3)   '2001/02/03 を返します。
End Sub

Timer関数

午前0時からの経過時間を返します。
【書式】
Timer

Sub Timer_1()
    Dim StartTime As Single
    Dim EndTime As Single
    
    MsgBox "OKをクリック(開始時刻)"
    
    StartTime = Timer
    
    MsgBox "OKをクリック(終了時刻)"
    
    EndTime = Timer
    
    MsgBox "開始から終了まで約" & Int(EndTime - StartTime) & "秒"
End Sub

次は定義域集計関数【Access】です。

コメント

タイトルとURLをコピーしました