日付の指定した部分を含むバリアント型 (内部処理形式 Integer の Variant) の値を返します。
| 警告 この関数の使用に問題があります。 一部の暦年の最後の月曜日は、週 1 である必要がある週 53 として返すことができます。 詳細と回避策については、「 Format または DatePart 関数は、昨年の最後の月曜日に間違った週番号を返す可能性がある」を参照してください。 |
|---|
構文
DatePart(interval, date [, firstdayofweek] [, firstweekofyear] )
DatePart 関数の構文には、次の引数があります。
| 引数 | 説明 |
|---|---|
| interval | 必須。 返す時間間隔の文字列式です。 |
| date | 必須。 評価するバリアント型日付の値です。 |
| firstdayofweek | 省略可能です。 週の最初の日を指定する定数。 省略すると、日曜日を指定したものと見なされます。 |
| firstweekofyear | 省略可能。 年の第 1 週を指定する定数です。 省略すると、1 月 1 日を含む週が第 1 週と見なされます。 |
設定
interval 引数には、次の設定があります。
| 設定 | 説明 |
|---|---|
| yyyy | 年 |
| q | 四半期 |
| m | 月 |
| y | 年間通算日 |
| d | 日 |
| w | 平日 |
| ww | 週 |
| h | 時 |
| n | 分 |
| s | 秒 |
firstdayofweek 引数には、次の設定があります。
| 定数 | 値 | 説明 |
|---|---|---|
| vbUseSystem | 0 | NLS API の設定を使います。 |
| vbSunday | 1 | 日曜日 (既定) |
| vbMonday | 2 | 月曜日 |
| vbTuesday | 3 | 火曜日 |
| vbWednesday | 4 | 水曜日 |
| vbThursday | 5 | 木曜日 |
| vbFriday | 6 | 金曜日 |
| vbSaturday | 7 | 土曜日 |
firstweekofyear 引数には、次の設定があります。
| 定数 | 値 | 説明 |
|---|---|---|
| vbUseSystem | 0 | NLS API の設定を使います。 |
| vbFirstJan1 | 1 | 1 月 1 日が含まれる週から開始します (既定)。 |
| vbFirstFourDays | 2 | 新年の少なくとも 4 日が含まれる最初の週から開始します。 |
| vbFirstFullWeek | 3 | 年の最初の完全な週から開始します。 |
解説
DatePart 関数を使用して、日付を評価し、特定の時間間隔を返すことができます。 たとえば、曜日または現在の時間を計算するために、DatePart を使用する場合があります。
firstdayofweek 引数は、"w" と "ww" の間隔記号を使用する計算に影響します。
date が日付リテラルの場合、指定した年はその日付の永続的な部分になります。 ただし、date が二重引用符 (" ") で囲まれていて、年を省略した場合、日付式が評価されるたびに、現在の年がコードに挿入されます。 これにより、別の年でも使用できるコードを記述することができます。
注
カレンダー プロパティの設定がグレゴリオ暦の場合、date ではグレゴリオ暦の日付を指定する必要があります。 カレンダーがイスラム暦の場合は、イスラム暦で日付を指定する必要があります。
返された日付部分は、現在のアラビア語のカレンダーの時間単位になります。 たとえば、現在のカレンダーがイスラム暦で、返される日付部分が年の場合、年の値はイスラム暦の年になります。
クエリの例
| Expression | 結果 |
|---|---|
| SELECT DatePart("yyyy",[DateofSale]) AS NewDate FROM ProductSales; | フィールド "DateofSale" の日付値の "Year" を返します。 |
| SELECT DatePart("q",[DateofSale]) AS NewDate FROM ProductSales; | フィールド "DateofSale" の日付値の "Quarter" (カレンダー年に基づく) を返します。 |
| SELECT DatePart("y",[DateofSale]) AS NewDate FROM ProductSales; | フィールド "DateofSale" の日付値の "年の日" (1 から 365) を返します。 |
| SELECT DatePart("d",[DateofSale]) AS NewDate FROM ProductSales; | フィールド "DateofSale" の日付値の "Day" を返します。 |
| SELECT DatePart("w",[DateofSale]) AS NewDate FROM ProductSales; | フィールド "DateofSale" の日付値の 'Weekday' (1 から 7 まで、1 は日曜日を表します) を返します。 |
| SELECT DatePart("ww",[DateofSale]) AS NewDate FROM ProductSales; | フィールド "DateofSale" の日付値の '週番号' (1 から 52) を返します。 |
| SELECT DatePart("h",[DateTime]) AS NewDate FROM ProductSales; | フィールド "DateTime" の日付値の "Hour" を返します。 |
| SELECT DatePart("n",[DateTime]) AS NewDate FROM ProductSales; | フィールド "DateTime" の日付値の "Minutes" を返します。 |
| SELECT DatePart("s",[DateTime]) AS NewDate FROM ProductSales; | フィールド "DateTime" の日付値の "秒" を返します。 |
VBA の例
注
次の例は、Visual Basic for Applications (VBA) モジュールでのこの関数の使用方法を示しています。 VBA の使用方法の詳細については、[検索] の横にあるドロップダウン リストで [開発者用リファレンス] を選び、検索ボックスに検索する用語を入力します。
この例では、DatePart 関数を使用して日付を取得し、その日付が含まれる四半期が示されます。
Dim TheDate As Date ' Declare variables.
Dim Msg
TheDate = InputBox("Enter a date:")
Msg = "Quarter: " & DatePart("q", TheDate)
MsgBox Msg