تحسب هذه الدالة عدد الأيام، أو الأشهر أو السنوات بين تاريخين.
تحذير
- يوفر Excel الدالة DATEDIF لدعم المصنفات الأقدم من Lotus 1-2-3. قد تقوم الدالة DATEDIF بحساب نتائج غير صحيحة ضمن سيناريوهات معينة. الرجاء مراجعة مقطع المشاكل المعروفة في هذه المقالة للحصول على مزيد من التفاصيل.
- نصيحة: إذا أردت معرفة عدد الأيام بين تاريخين، فما عليك سوى طرح التاريخ الأحدث من التاريخ السابق. يعمل هذا لأن التواريخ مخزنة كأرقام في Excel.
بناء الجملة
DATEDIF(start_date,end_date,unit)
| الوسيطة | الوصف |
|---|---|
|
تاريخ_البدء مطلوبة |
تاريخ يمثل أول تاريخ، أو تاريخ البدء في فترة معينة. يمكن إدخال التواريخ كسلاسل نصية داخل علامات اقتباس (مثلاً، "30/1/2001")، أو كأرقام تسلسلية (مثلاً، 36921 الذي يمثل 30 يناير 2001، إذا كنت تستخدم نظام تاريخ 1900)، أو كنتائج صيغ أو دالات أخرى (مثلاً، DATEVALUE("2001/1/30")). |
|
end_date مطلوبة |
تاريخ يمثّل آخر تاريخ، أو تاريخ الانتهاء، في الفترة الزمنية. |
| Unit | نوع المعلومات التي تريد إرجاعها، حيث:وحدة****إرجاع "Y"عدد السنوات الكاملة في الفترة الزمنية." M"عدد الأشهر الكاملة في الفترة الزمنية." D"عدد الأيام في الفترة الزمنية." MD"الفرق بين الأيام في start_date و end_date. يتم تجاهل الأشهر والسنوات في التواريخ. هام: لا ننصح باستخدام الوسيطة "MD"، لأن هناك قيود معروفة عليه. راجع قسم المشاكل المعروفة أدناه." YM"الفرق بين الأشهر في start_date و end_date. يتم تجاهل الأيام والسنوات في التواريخ"YD"الفرق بين أيام start_date و end_date. يتم تجاهل السنوات في التواريخ. |
الملاحظات
- يتم تخزين التواريخ كأرقام تسلسلية متتابعة حتى يمكن استخدامها في العمليات الحسابية. افتراضياً، 1 يناير 1900 هو الرقم التسلسلي 1، و1 يناير 2008 هو الرقم التسلسلي 39448 لأنه يزيد 39,447 يوماً عن 1 يناير 1900.
- تُعتبر الدالة DATEDIF مفيدة في الصيغ التي تحتاج فيها إلى حساب العمر.
- إذا كانت start_date أكبر من end_date، فستكون النتيجة #NUM!.
الأمثلة
| Start_date | End_date | الصيغة | الوصف (النتيجة) |
|---|---|---|---|
| 2001/1/1 | 2003/1/1 | =DATEDIF(Start_date,End_date,"Y") | سنتان كاملتان في الفترة الزمنية (2) |
| 2001/6/1 | 2002/8/15 | =DATEDIF(Start_date,End_date,"D") | 440 يوماً بين 1 يونيو 2001 و15 أغسطس 2002 (440) |
| 2001/6/1 | 2002/8/15 | =DATEDIF(Start_date,End_date,"YD") | 75 يوماً بين 1 يونيو و15 أغسطس متجاهلاً السنوات في التواريخ (75) |
المشاكل المعروفة
قد ينتج عن الوسيطة "MD" رقماً سالباً أو صفراً أو نتيجة غير دقيقة. إذا كنت تحاول حساب الأيام المتبقية بعد انتهاء الشهر الأخير، فإليك حل بديل:
تطرح هذه الصيغة اليوم الأول لنهاية الشهر (2016/5/1) من تاريخ الانتهاء الأصلي الموجود في الخلية E17 (2016/5/6). وإليك كيفية إجراء ذلك: أولاً، تقوم الدالة DATE بإنشاء التاريخ، 2016/5/1. تقوم بإنشائه باستخدام السنة الموجودة في الخلية E17، والشهر في الخلية E17. يمثل العدد 1 اليوم الأول من هذا الشهر. نتيجة الدالة DATE هي 2016/5/1. بعد ذلك، نطرح هذه النتيجة من تاريخ الانتهاء الأصلي في الخلية E17، وهو 2016/5/6. 2016/5/6 ناقص 2016/5/1 يساوي 5 أيام.
هل تحتاج إلى مزيد من المساعدة؟
يمكنك دائما الاستفسار من أحد الخبراء في مجتمع Excel التقني أو الحصول على الدعم في المجتمعات.