ترجع متغيرا (تاريخا) يحتوي على تاريخ تمت إضافة فاصل زمني محدد إليه.
بناء الجملة
DateAdd(interval, number, date)
تتضمن الدالة DateAdd الوسيطات التالية:
| الوسيطة | الوصف |
|---|---|
interval |
مطلوبة. تعبير سلسلة يمثل الفاصل الزمني الذي تريد إضافته. |
number |
مطلوبة. تعبير رقمي يمثل عدد الفواصل الزمنية التي تريد إضافتها. قد يكون الحصول على التواريخ في المستقبل أمرا إيجابيا أو سالبا للحصول على التواريخ في الماضي. |
date |
مطلوبة. المتغير (التاريخ) أو حرفيا يمثل التاريخ الذي يتم إضافة الفاصل الزمني إليه. |
إعدادات
تتضمن الوسيطة interval هذه الإعدادات:
| الإعداد | الوصف |
|---|---|
yyyy |
السنة |
q |
ربع السنة |
m |
الشهر |
y |
يوم من السنة |
d |
اليوم |
w |
Weekday |
ww |
الأسبوع |
h |
Hour |
n |
Minute |
s |
Second |
ملاحظات
يمكنك استخدام الدالة DateAdd لإضافة فاصل زمني محدد من تاريخ أو طرحه منه. على سبيل المثال، يمكنك استخدامه DateAdd لحساب تاريخ بعد 30 يوما من اليوم أو وقت بعد 45 دقيقة من الآن.
لإضافة أيام إلى date، يمكنك استخدام يوم من السنة ("y") أو يوم ("d") أو يوم من الأسبوع ("w").
لن تعرض الدالة DateAdd تاريخا غير صالح. يضيف المثال التالي شهرا واحدا إلى 31 يناير:
DateAdd("m", 1, "31-Jan-95")
في هذه الحالة، DateAdd ترجع 28-Feb-95، وليس 31-Feb-95. إذا date كانت 31-يناير-96، ترجع 29-فبراير-96 لأن 1996 سنة كبيسة.
إذا كان التاريخ المحسوب يسبق السنة 100، مما يعني طرح سنوات أكثر مما هي عليه date، فسيقع خطأ.
إذا number لم تكن قيمة طويلة، يقوم Access بتقريبها إلى أقرب عدد صحيح قبل تقييم التعبير.
ملاحظة
يتم تحديد تنسيق القيمة المرجعة DateAdd لها بواسطة إعدادات لوحة التحكم، وليس حسب التنسيق الذي تم تمريره في الوسيطةdate.
ملاحظة
بالنسبة إلى date، إذا كان إعداد الخاصية Calendar ميلاديا، فيجب أن يكون التاريخ الموفر ميلاديا. إذا كان التقويم هجريا ، فيجب أن يكون التاريخ المقدم هجري. إذا كانت قيم الشهر عبارة عن أسماء، فيجب أن يتطابق الاسم مع إعداد الخاصية الحالية Calendar . لتقليل فرص حدوث تعارضات، أدخل قيم الشهر الرقمية بتنسيق "تاريخ قصير".
أمثلة عن الاستعلام
| التعبير | النتائج |
|---|---|
SELECT DateAdd("YYYY",1,[DateofSale]) AS Expr1 FROM ProductSales; |
إضافة سنة واحدة إلى قيم التاريخ في DateofSale الحقل. |
SELECT DateAdd("YYYY",-1,[DateofSale]) AS Expr1 FROM ProductSales; |
طرح سنة واحدة من قيم التاريخ في DateofSale الحقل. |
SELECT DateAdd("d",10,[DateofSale]) AS NewDate FROM ProductSales; |
تضيف 10 أيام إلى قيم التاريخ في DateofSale الحقل وترجع النتائج في NewDate العمود. |
SELECT DateAdd("ww",-1,[DateofSale]) AS NewDate FROM ProductSales; |
طرح أسبوع واحد أو 7 أيام من قيم التاريخ في DateofSale الحقل وإرجاع النتائج في NewDate العمود. |
مثال VBA
ملاحظة
توضح الأمثلة التالية استخدام هذه الدالة في وحدة نمطية ل Visual Basic for Applications (VBA). لمزيد من المعلومات حول استخدام VBA، راجع مرجع Access 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