日付・時刻から指定した部分を取得する

今回は日付・時刻から年、月、日等の指定した部分の取得方法についてメモしておきます。

日付を個々の構成要素に分解する関数



実行プログラム

実行結果

  • YEAR関数:年を表す1900 ~ 9999の整数を返します。
  • Month関数:月を表す1 ~ 12の整数を返します。
  • DAY関数:日付を表す1 ~ 31の整数を返します。
  • Hour関数:時間を表す0 ~ 23の整数を返します。
  • Minute関数:分を表す0 ~ 59の整数を返します。
  • Second関数:秒を表す0 ~ 59の整数を返します。


DatePart関数を使う


DatePart関数を使い、指定した部分を取得することができます。
第1パラメーターの設定値により取得する部分を指定します。
取得対象 設定値
yyyy
m
d
h
n
s
四半期 q
通日(一年の何日目か) y
曜日番号 w
ww


実行プログラム

実行結果


曜日番号の取得

週の最初の曜日を指定することができます。指定しない場合は日曜日が最初の曜日なります。
定数 説明
vbSunday 1 日曜日(既定)
vbMonday 2 月曜日
vbTuesday 3 火曜日
vbWednesday 4 水曜日
vbThursday 5 木曜日
vbFriday 6 金曜日
vbSaturday 7 土曜日


2010年8月1日を例にしてみます。
2010年8月1日は日曜日ですが、週の最初の曜日を日曜日とするか、月曜日とするかで戻り値が異なります。

実行プログラム

実行結果




第何週かを取得する


第1週の決め方は以下の3パターンがあります。
定数 説明
vbFirstJan1 1 1月1日が含まれる週を第1週目とする。
vbFirstFourDays 2 初めて4日間以上になる週を第1週目とする。
vbFirstFullWeek 3 初めて7日間そろう完全な週を第1週目とする。

 

2014年1月と2015年1月を例にしてみます。


実行プログラム

実行結果

  • vbFirstJan1:1月1日が含まれる週が第1週目となります。
    よって2015年1月5日は第2週となります。


  • vbFirstFourDays:4日未満の週は第1週目となりません。
    2015年1月5日は第1週となります。


  • 2014年1月5日は第2週となります。


  • vbFirstFullWeek:7日間そろう完全な週が第1週目となります。
    よって2014年1月5日は第1週となります。