DatePart関数 …日時から指定した単位の数値を取り出す

投稿日:2017年8月14日 更新日:

[Access 2016/2013/2010/2007]

AccessのDatePart関数の使い方を紹介します。

スポンサーリンク

書式

DatePart(単位, 日時, 週の開始曜日, 年の第1週)

日時から、指定した単位の数値を取り出します。現在が第何四半期にあたるのか、年初から数えて何日目にあたるのかなどを調べたいときに使用します。

戻り値の型:バリアント型 (内部処理形式 Integer の Variant)

引数

引数 指定 説明
単位 interval 必須 取り出す時間の単位を 表A の文字列式で指定。「"」で囲んで指定すること
日時 date 必須 日時を指定
週の開始曜日 firstdayofweek 省略可 週の始まりの曜日を 表B の値で指定。引数単位に"w"や"ww"を指定したときの戻り値に影響する。省略した場合は、日曜日を週の始まりと見なす
年の第1週 firstweekofyear 省略可 年の第1週を 表C の値で指定。引数単位に"ww"を指定したときの戻り値に影響する。省略した場合は、1月1日を含む週を年の第1週と見なす

表A 引数 単位 の設定値

設定値 説明 カウントの基準
yyyy 「年」を取り出す(Year関数と同じ働き)
q 四半期 どの四半期に含まれるかを調べる
m 「月」を取り出す(Month関数と同じ働き)
y 年間通算日 1月1日から数えた日数を返す
d 「日」を取り出す(Day関数と同じ働き)
w 週日 週の開始曜日から数えた日数を返す(Weekday関数と同じ働き)
ww 年の第1週から数えた週数を返す
h 「時」を取り出す(Hour関数と同じ働き)
n 「分」を取り出す(Minute関数と同じ働き)
s 「秒」を取り出す(Second関数と同じ働き)

表B 引数 週の開始曜日 の設定値

定数 説明
0 vbUseSystem NLS API(国別の環境をサポートする仕組み)の設定値
1 vbSunday 日曜日(既定値)
2 vbMonday 月曜日
3 vbTuesday 火曜日
4 vbWednesday 水曜日
5 vbThursday 木曜日
6 vbFriday 金曜日
7 vbSaturday 土曜日

表C 引数 年の第1週 の設定値

定数 説明
0 vbUseSystem NLS API(国別の環境をサポートする仕組み)の設定値
1 vbFirstJan1 1月1日を含む週(既定値)
2 vbFirstFourDays 新しい年の少なくとも 4 日間を含む最初の週
3 vbFirstFullWeek 全体が新しい年に含まれる最初の週

使用例

使用例 戻り値 説明
DatePart("q", #2017/5/20#) 2 2017/5/20 は第2四半期
DatePart("y", #2017/5/20#) 140 2017/5/20 は1月1日から数えて140日目
DatePart("d", #2017/5/20#) 20 2017/5/20 から「日」を取り出す
DatePart("w", #2017/5/20#) 7 2017/5/20(土) は日曜日から数えて7日目
DatePart("ww", #2017/5/20#) 20 2017/5/20 は年の第1週から数えて20週目
DatePart("d", Null) Null 日時がNull値の場合、戻り値はNull値

実践例:売り上げを四半期ごとに集計する

クエリを使用して、[金額]フィールドを[受注日]フィールドの四半期ごとに集計します。[デザイン]タブの[集計]ボタンをクリックして集計行を表示したうえで次表のように設定します。特定の年のデータを抽出しないと、異なる年のデータが同じ四半期にまとめられてしまうので注意してください。

フィールド 集計 抽出条件
四半期: DatePart("q",[受注日]) グループ化  
四半期計: 金額 合計  
受注日 Where 条件 Between #2017/01/01# And #2017/12/31#

なお、四半期の求め方は複数あります。「日付が第何四半期にあたるかを調べるには」も参照してください。

スポンサーリンク

関連記事

Copyright© Officeのチカラ , 2018 All Rights Reserved.