DatePart 関数 (Visual Basic)

更新 : 2007 年 11 月

特定の日付型 (Date) の値の指定コンポーネントを含む整数型 (Integer) の値を返します。

Public Overloads Function DatePart( _
   ByVal Interval As DateInterval, _
   ByVal DateValue As DateTime, _
   Optional ByVal FirstDayOfWeekValue As FirstDayOfWeek = VbSunday, _
   Optional ByVal FirstWeekOfYearValue As FirstWeekOfYear = VbFirstJan1 _
) As Integer
' -or-
Public Overloads Function DatePart( _
    ByVal Interval As String, _
   ByVal DateValue As Object, _
   Optional ByVal DayOfWeek As FirstDayOfWeek = FirstDayOfWeek.Sunday, _
   Optional ByVal WeekOfYear As FirstWeekOfYear = FirstWeekOfYear.Jan1 _
) As Integer

パラメータ

  • Interval
    必ず指定します。戻り値とする日時の値の項目を表す DateInterval 列挙値または文字列 (String) 式です。

  • DateValue
    必ず指定します。評価する日付型 (Date) の値。

  • FirstDayOfWeekValue, DayOfWeek
    省略可能です。週の最初の曜日を指定する、FirstDayOfWeek 列挙値から選択した値です。省略すると、FirstDayOfWeek.Sunday が使用されます。

  • FirstWeekOfYearValue, WeekOfYear
    省略可能です。年の第 1 週を指定する、FirstWeekOfYear 列挙型から選択した値です。省略すると、FirstWeekOfYear.Jan1 が使用されます。

設定

Interval 引数の設定値は次のいずれかです。

列挙値

文字列

戻り値とする日時の値の項目

DateInterval.Day

d

日付 (1 ~ 31)

DateInterval.DayOfYear

y

年間通算日 (1 ~ 366)

DateInterval.Hour

h

時間

DateInterval.Minute

n

DateInterval.Month

m

DateInterval.Quarter

q

四半期

DateInterval.Second

s

DateInterval.Weekday

w

曜日 (1 ~ 7)

DateInterval.WeekOfYear

ww

週 (1 ~ 53)

DateInterval.Year

yyyy

FirstDayOfWeekValue 引数の設定値は次のいずれかです。

列挙値

説明

FirstDayOfWeek.System

0

システムで設定されている週の最初の曜日

FirstDayOfWeek.Sunday

1

日曜日 (既定値)

FirstDayOfWeek.Monday

2

月曜日 (ISO 規格 8601、3.17 項に準拠)

FirstDayOfWeek.Tuesday

3

火曜日

FirstDayOfWeek.Wednesday

4

水曜日

FirstDayOfWeek.Thursday

5

木曜日

FirstDayOfWeek.Friday

6

金曜日

FirstDayOfWeek.Saturday

7

土曜日

FirstWeekOfYearValue 引数の設定値は次のいずれかです。

列挙値

説明

FirstWeekOfYear.System

0

システム設定で指定された年の第 1 週

FirstWeekOfYear.Jan1

1

1 月 1 日を含む週 (既定値)

FirstWeekOfYear.FirstFourDays

2

新しい年の少なくとも 4 日間を含む週 (ISO 規格 8601、3.17 項に準拠)

FirstWeekOfYear.FirstFullWeek

3

新しい年の 1 週間を含む最初の週

例外

例外の種類

エラー番号

条件

ArgumentException

5

Interval の型が無効です。

InvalidCastException

13

DateValue を日付型 (Date) に強制変換できません。

非構造化エラー処理を使用する Visual Basic 6.0 アプリケーションをアップグレードする場合は、"エラー番号" の列を参照してください(エラー番号を Number プロパティ (Err オブジェクト) と比較することもできます)。ただし、可能であれば、このようなエラー制御は Visual Basic の構造化例外処理の概要 に置き換えることを検討してください。

解説

DatePart 関数を使用すると、日時の値を評価し、特定のコンポーネントを返すことができます。たとえば、DatePart を使用して、曜日や現在の時刻などを計算できます。

Interval 引数に DateInterval.Weekday を選択した場合、戻り値は FirstDayOfWeek 列挙型の値で構成されます。DateInterval.WeekOfYear を選択すると、DatePart は System.Globalization 名前空間の Calendar クラスと CultureInfo クラスを使用して、現在の設定を判断します。

FirstDayOfWeekValue 引数は、DateInterval.Weekday、DateInterval.WeekOfYear、および Interval の設定を使用する計算に影響します。FirstWeekOfYearValue 引数は、Interval に DateInterval.WeekOfYear を指定した計算に影響します。

すべての日付型 (Date) の値は DateTime 構造体でサポートされているため、日付型のメソッドでは日時部分を取得するときに追加のオプションを使用できます。たとえば、次に示すように、時刻値が午前 0 時に設定された日付型 (Date) の変数の日付値全体を取得できます。

Dim CurrDatTim As Date = Now   ' Current date and time.
Dim LastMidnight As Date = CurrDatTim.Date   ' At midnight.

使用例

次の例は、ユーザーに日付の入力を求めた後、DatePart 関数を使って、その日付がどの四半期に当たるかを調べます。

Dim FirstDate, Msg As String   'Declare variables.
Dim SecondDate As Date
FirstDate = InputBox("Enter a date:")
SecondDate = CDate(FirstDate)
Msg = "Quarter: " & DatePart(DateInterval.Quarter, SecondDate)
MsgBox(Msg)

必要条件

名前空間 : Microsoft.VisualBasic

モジュール : DateAndTime

アセンブリ : Visual Basic ランタイム ライブラリ (Microsoft.VisualBasic.dll)

参照

参照

DateAdd 関数 (Visual Basic)

DateDiff 関数 (Visual Basic)

Day 関数 (Visual Basic)

Format 関数

Now プロパティ

Weekday 関数 (Visual Basic)

Year 関数 (Visual Basic)

日付型 (Date) (Visual Basic)

System