EXCEL VBA 日付・時刻・曜日を利用するVBA関数一覧(関数説明)

 

 

EXCEL VBA 日付・時刻・曜日を利用するVBA関数一覧(関数説明)

 

 

 ●はじめに
EXCEL VBAで特に日付・時刻・曜日を利用する関数の一覧を作成しました。一覧には関数名・使用例を実行した結果も記載しておりますので、EXCEL VBAプログラムで日付・時刻・曜日などを操作する時に参照して下さい。

 

 

 ●書式の説明   (文字列を操作する関数一覧)
機能内容関数使用例(簡易)結果使用例説明(結果内容)
現在のシステムの日付と時刻を返します。NowNow()2020/5/11 14:47:56現在の日付と時刻を表示します。
現在のシステムの日付を返します。DateDate()2020/5/5現在の日付を表示します。
現在のシステムの時刻を返します。TimeTime()12:23:45現在の時間を表示します。
時刻から時を取り出します。Hour(時刻)Hour(#3:45:56#)
3時間の(時)を表示します。
時刻から分を取り出します。Minute(時刻)Minute(#3:45:56#)45時間の(分)を表示します。
時刻から分を取り出します。Second(時刻)Second(#3:45:56#)56時間の(分)を表示します。
日付から年を取り出します。Year(日付)Year(#7/11/2020#)2020日付の年を表示します。
日付から月を取り出します。Month(日付)Month(#7/11/2020#)7日付の月を表示します。
日付から日を取り出します。Day(日付)Month(#7/11/2020#)11日付の日を表示します。
年・月・日の数値から日付を作成するDateSerial(年,月,日)DateSerial(2020,5,11)2020/5/112020、5、11から日付を作成します。
時・分・秒の数値から時刻を作成します。TimeSerial(時,分,秒)TimeSerial(11,23,45))11:23:4511,23,45から時刻を作成します。
日付を表す文字列から日付を作成する。DateValue(日付)DateValue("R2/11/11")2020/11/11R2/11/11から日付を作成します。
時刻を表す文字列から時刻を作成します。TimeValue(時刻)TimeValue("12:24:56")12:24:5612:24:56から時刻を作成
日付に対する曜日のコードを返します。Weekday(日付)Weekday("2020/11/3")32020年11月3日に対応する曜日コードを表示します。
曜日コードから曜日を返します。WeekdayName(曜日コード,形式)WeekdayName(1,false)日曜日曜日コード:1を選択しましたので、月曜日が表示されました。
午前0時からの経過秒数を返します。TimerTimer8504.46875111時37分21秒は、8504.468751です。

 

 

 

 

EXCEL VBA Now関数のサンプル  (現在の日付・時刻)

 

 ●プログラム説明 (Now関数)
下記のサンプルプログラムは、Now関数を使ったサンプルプログラムです。プログラム中に計算部分がありますので、その計算の開始(日時・時刻)と終了(日時・時刻)を表示するサンプルプログラムです。(計算時間を測定するサンプルプログラムです。)

 

 

●実行前~実行後 ※プログラムの実行後、セル(B2)にプログラム開始時刻(日付・時刻)が表示されて、セル(B4)にプログラム終了時刻(日付・時刻)が表示されました。
(画面クリックして拡大)

 

 

 

EXCEL VBA Date関数のサンプル  (現在の日付)

 

●プログラム説明 (Date関数)
下記のサンプルプログラムは、B列に本日から6日後の日付を順番に表示します。

 

 

 ●実行前~実行後 ※プログラム実行後、B列にDate関数で取得した今日の日付から+1ずつ加算して、表示されました。
(画面クリックして拡大)

 

 

 

EXCEL VBA Time関数のサンプル  (現在の時刻)

 

 ●プログラム説明 (Time関数)
下記のサンプルプログラムは、現在の時刻から6時間後の時刻を表示するサンプルプログラムです。

 

 

  ●実行前~実行後 ※プログラム実行後、B列に現在の時刻から6時間後の時刻を順番に表示されました。
(画面クリックして拡大)

 

 

 

EXCEL VBA Hour関数のサンプル  (時刻)

 

●プログラム説明 (Hour関数)
下記のサンプルプログラムは、現在の時刻から6時間前までの時刻(時)を表示するサンプルプログラムです。

 

 

●実行前~実行後 ※プログラム実行後、B列に現在の時刻から6時間前までの時刻(時)のみを表示しました。
(画面クリックして拡大)

 

 

 

 

EXCEL VBA Minute関数のサンプル  (時刻)

 

●プログラム説明 (Minute関数)
下記のサンプルプログラムは、現在の時刻から10分単位で50分後までの時刻(分)を表示するサンプルプログラムです。

 

 

 ●実行前~実行後 ※プログラム実行後、現在の時刻から10単位で50分後までの時刻(分)をB列に表示します。
(画面クリックして拡大)

 

 

EXCEL VBA Second関数のサンプル  (時刻)

 

●プログラム説明 (Second関数)
下記のサンプルプログラムは、現在の時刻から10分単位で50分後までの時刻(分)を表示するサンプルプログラムです。

 

 

 

  ●実行前~実行後 ※プログラム実行後、現在の時刻から5秒単位で25秒後までの時刻(秒)をB列に表示します。
(画面クリックして拡大)

 

 

 

EXCEL VBA Year関数のサンプル  (日付)

 

●プログラム説明 (Year関数)
下記のサンプルプログラムは、現在の日付から1年単位で5年後までの年を表示するサンプルプログラムです。

 

 

●実行前~実行後 ※プログラム実行後、現在の日付から1年単位で5年後までの日付(年)をB列に表示します。
(画面クリックして拡大)

 

 

 

 

EXCEL VBA Month関数のサンプル  (日付)

 

 ●プログラム説明 (Month関数)
下記のサンプルプログラムは、現在の日付から1ヵ月単位で5ヶ月後までの月を表示するサンプルプログラムです。

 

 

 ●実行前~実行後 ※プログラム実行後、現在の日付から1ヵ月単位で5ヶ月後までの日付(月)をB列に表示します。
(画面クリックして拡大)

 

 

EXCEL VBA Day関数のサンプル  (日付)

 

 ●プログラム説明 (Day関数)
下記のサンプルプログラムは、現在の日付から1日単位で5日後までの日を表示するサンプルプログラムです。

 

 

  ●実行前~実行後 ※プログラム実行後、現在の日付から1日単位で5日後までの日付(日)をB列に表示します。
(画面クリックして拡大)

 

EXCEL VBA DateSerial関数のサンプル  (数値から日付を作成)

 

●プログラム説明 (DateSerial関数)
下記のサンプルプログラムは、数値から日付を作成するサンプルプログラムです。A列に年、B列に月、C列に日が登録されています。これをD列に日付を作成して表示させます。

 

 

●実行前~実行後 ※プログラム実行後、A列(年)・B列(月)・C列(日)のセル数値データを元に、D列に日付を表示しました。
(画面クリックして拡大)

 

 

 

 

EXCEL VBA TimeSerial関数のサンプル  (数値から時刻を作成)

 

 

 ●プログラム説明 (TimeSerial関数)
下記のサンプルプログラムは、数値から時刻を作成するサンプルプログラムです。A列に時、B列に分、C列に秒が登録されています。これをD列に時刻を作成して表示させます。

 

 

 ●実行前~実行後 ※プログラム実行後、A列(時)・B列(分)・C列(秒)のセル数値データを元に、D列に時刻を表示しました。
(画面クリックして拡大)

 

 

EXCEL VBA DateValue関数のサンプル  (日付の文字列からシリアル値の日付を作成)

 

 

●プログラム説明 (DateValue関数)
下記のサンプルプログラムは、DateValue関数を使ったサンプルプログラムです。文字列で作成した日付からシリアル値の日付(EXCELで認識)に変換します。

 

 

  ●実行前~実行後 ※プログラムの実行後、A列に登録されている文字列の日付をB列にシリアル値として変換された日付が表示されました。
(画面クリックして拡大)

 

 

 

EXCEL VBA TimeValue(関数のサンプル  (文字列の時刻からシリアル値の時刻を作成)

 

 ●プログラム説明  (TimeValue(関数)
下記のサンプルプログラムは、TimeValue(関数)を使ったサンプルプログラムです。文字列で作成した時刻をシリアル値の時刻(EXCELで認識)に変換します。

 

 

●実行前~実行後 プログラムの実行後、A列に登録されている文字列の時刻をB列にシリアル値として変換された時刻が表示されました。
(画面クリックして拡大)

 

 

 

EXCEL VBA Weekday(関数のサンプル  (日付対する曜日のコードを返します)

 

 ●プログラム説明(Weekday(日付))

下記のサンプルプログラムは、Weekday関数を使ったサンプルプログラムです。日付に対して、該当す曜日コードを返します。

曜日(Weekday)曜日番号
日曜日1
月曜日2
火曜日3
水曜日4
木曜日5
金曜日6
土曜日7

 

 

 ●実行前~実行後 ※プログラム実行後、A列の日付を元に、そのA列の日付の曜日をB列に表示されました。
(画面クリックして拡大)

 

 

 

 

EXCEL VBA WeekdayName関数のサンプル  (曜日コードから曜日「文字列」を返します

 

 

 ●プログラム説明 (WeekdayName(曜日コード,曜日名の表示,「最初の曜日」)

下記のサンプルプログラムは、曜日コードから曜日名を表示するサンプルプログラムですWeekday関数から取得した曜日コードからWeekdayName関数で曜日名を返します。WeekdayName関数を利用する事で、上記プログラムの様に、Select case文などを使わなくでも曜日(文字列)が取得できます。

 

 

  ●実行前~実行後 ※プログラム実行後、A列の日付からWeekDay関数で曜日番号を取得して、B列にWeekdayName関数を使って曜日を表示されました。
(画面クリックして拡大)

 

 

EXCEL VBA Timer関数のサンプル  (午前0時からの経過秒数を返します)

 

 ●プログラム説明 (Timer)

下記のサンプルプログラムは、Timer関数を利用したプログラム内のダミー処理の処理時間を計測するサンプルプログラムです。ダミー処理のスタートとストップにTimer関数による経過時間を計測して、その差額で経過時間を計測します。

 

 

●実行前~実行後 ※プログラム実行後、ダミー処理の開始時間と終了時間を計測して、経過時間を計算する事が出来ました。
(画面クリックして拡大)

 

 

最後まで、ご覧いただきまして誠に有難うございました。
また、VBAに関するテクニックや便利な手法などをこのサイトに掲載していきますので、定期的に参照していただけると幸いです。