教えて!ExcelVBA!

ExcelVBAの基礎知識・書き方について説明していきます。

【ExcelVBA関数】DatePart関数で年間通算日を調べる方法を教えて!

       f:id:m_kbou:20191226153459p:plain

年間通算日を調べる方法について説明します。調べるにはDatePart関数を使用します。

 

【目次】

 

構文

記述方法は、以下の通りとなります。

=======================================================================

DatePart(”[時間間隔の単位]”,[時間間隔を取得したい日付]

=======================================================================

[説明]:

DatePart関数は指定した日付の同一年における時間間隔を整数値で返します。[時間間隔の単位]には時間間隔の引数を記述します。引数は「”」(ダブルクォーテーション)で囲みます。[時間間隔を取得したい日付]には起点となる日付を記述します。内容を纏めると、「[時間間隔を取得したい日付]を起点に[時間間隔の単位]で指定した時間の間隔を数字で返して下さい。」との意味になります。

[記述例]:

DatePart("y", Date)

 

使い方

使い方について、具体的に説明していきます。

[記述例]:

※以下の記述例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方については、VBEの開き方を参考にして下さい。

-------------------------------------------------

Sub サンプル()
    MsgBox DatePart("y", Date)
End Sub

-------------------------------------------------

指定した日付が年間通算で何日目になるのかを調べるため、[時間間隔を取得したい日付]に「y」を指定します。yは起点とする日付をもとに年初から数えて通算何日目にあたるかを数値で返します。また、[時間間隔を取得したい日付]には本日の日付である引数「Date」を指定する事で、本日と年初間の年間通算日を算出します。結果「本日が年初から数えて通算何日目にあたるかをMsgBoxで表示して下さい。」との意味になります。

[実行例]:

※本日が2019/12/26となり年初から360日目にあたるため「360」が表示されます。 

f:id:m_kbou:20191226153518p:plain

年間通算日を調べる方法についての説明は以上です。

 

おわりに

今回は、年間通算日を調べる方法について説明しました。類似した内容に本日が年初から数えて何週目になるかを調べる方法があります。こちらも一緒に覚えておいて下さい。