本ページには広告が含まれています。

ExcelVBA Day関数 指定した日付の日を整数で返します

ExcelVBA Day関数 指定した日付の日を整数で返します

Excel VBAの「Day 関数」について解説します。

スポンサーリンク

Day 関数とは

Excel VBA の Day 関数は、指定した日付が月の何日かを示す Variant (Integer) の整数値を返します。

月の何日かを示す整数値とは、月間通算日番号のことです。

Day 関数の構文や引数の設定など、実際の使い方について解説していきたいと思います。

Day 関数(Visual Basic for Applications リファレンス)

構文(引数と戻り値)

Excel VBAの関数を使いこなすには、関数の構文を正しく理解しておくことが重要です。

構文

Day(date)

引数

引数 説明
date【必須】日付を表すバリアント型 (Variant) の値を、
数値式、文字列式(または任意の組み合わせ)で指定します
date に Null が含まれている場合は Null が返されます

戻り値

戻り値説明
月間通算日番号1 ~ 31 の範囲の整数値 Variant (Integer) を返します

解説(使用例)

Day 関数は、引数 date に指定された日付が月の何日なのかを示す数値を返します。

Day 関数の動作を確認するサンプル

引数に設定した日付から Day 関数で日の数値(月間通算日番号)だけ抜き出して表示します。

'■Day関数の動作確認サンプル
Sub Day_Sample()
  Dim d As Date
'▼Date関数の取得値を変数に代入
  d = Date  '実行時の日付を取得
  MsgBox d & " は " & Day(d) & "日です" & _
  vbCrLf & "5日後は" & Day(d + 5) & "日です" & _
  vbCrLf & "10日後は" & Day(d + 10) & "日です" & _
  vbCrLf & "100日後は" & Day(d + 100) & "日です"
'▼Now関数の取得値を変数に代入
  d = Now   '実行時の日時を取得
  MsgBox d & " は " & Day(d) & "日です" & _
  vbCrLf & "5日後は" & Day(d + 5) & "日です" & _
  vbCrLf & "10日後は" & Day(d + 10) & "日です" & _
  vbCrLf & "100日後は" & Day(d + 100) & "日です"
End Sub

実行結果の MsgBox 画像 がこちらです。

Day_Smple実行実行MsgBox画像_1
Day_Smple実行実行MsgBox画像_2

・3行目、Date型の変数 d を用意しました。

・5行目、変数 dDate 関数でコード実行日の日付を代入しています。

・6行目~9行目で、MsgBoxDay(d)Day(d + 5) で5日後、Day(d + 10) で10日後、Day(d + 100) で100日後の月間通算日番号を取得して表示させています。

・10行目以降は、変数 dNow 関数でコード実行日の日時(日付+時刻)を代入して、同じように月間通算日番号を取得して表示させています。

二つの MsgBox 画像を比べていただければ、日付に時刻が付いていても全く変わらないことがわかります。

Day の引数 (date) に、日付リテラル #6/25/2024# や 文字列で ”2024/6/25” や “2024年6月25日” などを指定しても同じ結果になります。

Date など日付・時刻関数の使用例について

Date 関数のほか「日付・時刻」の関数について解説している過去記事があります。下記のリンクからジャンプしてご覧いただければ、日付に関するものをまとめてご確認いただけると思います。

おわりに

Excel VBA Day 関数は、引数の日付から月の何日かを示す 1~31 の値 (月間通算日番号) を返します。簡単に言うと、日付の日の数値だけを返すということです。

Date 関数は日付を抜き出します。その日付から「日」だけを抜き出すのが「Day 関数」です。

同様に「年」だけを抜き出すのが「Year 関数」、「月」だけを抜き出すのが「Month 関数」です。

さらに、日付に時分秒を含んでいる場合「Hour 関数」「Minute 関数」「Second 関数」を使用して「時」「分」「秒」を取得できます。

以上、この解説が少しでもみなさまのお役に立てたなら幸いです(^^;

VBAの関数一覧はこちらからご参照ください。

スポンサーリンク
スポンサーリンク

VBAサンプルファイルダウンロードページのご案内

このページで使用したサンプルファイルの登録はありません(^^;
ページ内のコードをコピーしてご利用ください。

ダウンロードページへのリンクは下のカードクリックでジャンプできます。
よろしければご利用ください!