指定された時間間隔を加算した日付をバリアント型 (内部処理形式 DateVariant) の値で返します。

構文

DateAdd ( interval, number, date )

DateAdd 関数の引数は次のとおりです。

引数

説明

interval

必須。 追加する時間間隔の文字列式。

number

必須。 追加する間隔の数を表す数式を指定します。 正の値 (将来の日付を取得する場合) または負の値 (過去の日付を取得する) を指定できます。

date

必須。 時間間隔を追加する日付を表す Variant (Date) またはリテラル。

ヒント:  Access 2010 では、式ビルダーで IntelliSense を使用できるので、式に必要な引数を確認することができます。 

設定

interval 引数の設定は次のとおりです。

設定

説明

yyyy

q

四半期

m

y

年間通算日

d

w

平日

ww

h

n

s

解説

DateAdd 関数を使うと、指定した時間間隔を日付に加算したり、日付から減算したりできます。 たとえば、DateAdd を使うと、今日から 30 日後の日付や、今から 45 分後の時刻を計算できます。

date に日数を追加するには、年間通算日 ("y")、日 ("d")、または平日 ("w") を使います。

DateAdd 関数が無効な日付を返すことはありません。 次の例では、1 月 31 日に 1 か月を追加します。

DateAdd("m", 1, "31-Jan-95")

この場合、DateAdd は、1995 年 2 月 31 日ではなく、1995 年 2 月 28 日を返します。 date が 1996 年 1 月 31 日の場合は、1996 が閏年なので 1996 年 2 月 29 日を返します。

計算された日付が 100 年より前になる場合 (つまり、日付 より多くの年数を減算した場合)、エラーが発生します。

number が Long 値ではない場合は、直近の整数に丸められてから評価されます。

注:  DateAdd の戻り値の形式は、date 引数で渡された形式ではなく、コントロール パネルでの設定によって決まります。

注:  カレンダー プロパティの設定がグレゴリオ暦の場合、date ではグレゴリオ暦の日付を指定する必要があります。 カレンダーがイスラム暦の場合は、イスラム暦で日付を指定する必要があります。 月の値が名前の場合、現在のカレンダー プロパティの設定と名前が一致している必要があります。 現在のカレンダー プロパティの設定での月名と矛盾する可能性を最小限に抑えるには、月を表す数値 (短い日付形式) を入力します。

クエリの例

結果

SELECT DateAdd("YYYY",1,[DateofSale]) AS Expr1 FROM ProductSales;

フィールド "DateofSale" の日付値に 1 年を追加して結果を返します。

SELECT DateAdd("YYYY",-1,[DateofSale]) AS Expr1 FROM ProductSales;

フィールド "DateofSale" の日付値に 1 年を減算して結果を返します。

SELECT DateAdd("d",10,[DateofSale]) AS NewDate FROM ProductSales;

フィールド "DateofSale" の日付値に 10 日を追加して、列 "NewDate" の結果を返します。

SELECT DateAdd("ww",-1,[DateofSale]) AS NewDate FROM ProductSales;

フィールド "DateofSale" の日付値から 1 週間 (7 日) を減算して、列 "NewDate" の結果を返します。

VBA の例

注: 次の例は、Visual Basic for Applications (VBA) モジュールでのこの関数の使用方法を示しています。 VBA の使用方法の詳細については、[検索] の横にあるドロップダウン リストで [開発者用リファレンス] を選び、検索ボックスに検索する用語を入力します。

この例では、入力として日付を受け取り、DateAdd 関数を使って、指定された月数だけ将来の対応する日付を表示します。

Dim FirstDate As Date    ' Declare variables.
Dim IntervalType As String
Dim Number As Integer
Dim Msg
IntervalType = "m" ' "m" specifies months as interval.
FirstDate = InputBox("Enter a date")
Number = InputBox("Enter number of months to add")
Msg = "New date: " & _
DateAdd(IntervalType, Number, FirstDate)
MsgBox Msg

適切な日付関数を選択する

ヘルプを表示

スキルを磨く
トレーニングの探索
新機能を最初に入手
Microsoft Office Insider に参加

この情報は役に立ちましたか?

言語の品質にどの程度満足していますか?
どのような要因がお客様の操作性に影響しましたか?

ご意見をいただきありがとうございます。

×