DATEDIF פונקציה סודית באקסל לחישוב הפרש בין תאריכים

מי מכיר את הפונקציה DATEDIF באקסל ?

מי מוצא אותה ברשימת הפונקציות ?

היא לא מופיעה, אבל אם נכתוב אותה תבצע את העבודה יפה.

הפונקציה יודעת להחזיר כמה תקופות יש בין 2 תאריכים .

מבנה הפונקציה :

=DATEDIF(תאריך1,תאריך 2,תקופה)

תאריך 1

התאריך המוקדם יותר

תא המכיל אותו או תאריך מוקף סולמיות #

תאריך 2

התאריך המאוחר יותר

תא המכיל אותו או תאריך מוקף סולמיות #

תקופה

תקופה חייבת להיות בין גרשיים

תקופה יכולה להיות:

D ימים

M חודשים (הפונקציה תחזיר חודשים שלמים, אם 3 חודשים ו-5 ימים , נקבל 3)

Y שנים שלמות. (הפונקציה תחזיר שנים שלמות, אם 11 חודשים +10 ימים , נקבל 0)

YM מספר החודשים בנוסף למספר השלם של שנים בין שני התאריכים

YD מספר הימים בנוסף למספר השלם של שנים בין שני תאריכים

MD מספר הימים בנוסף למספר השלם של הפרש שנים בין שני תאריכים ומספר שלם של חודשים בנוסף לשנים.

לדוגמא הפרש בין התאריכים 5/2/2011 וה- 1/1/2012  הנמצאים בתאים H1  I1

  מקבלים חזרה הפונקציה
ימים 330

=DATEDIF(H1,I1,"d")

חודשים 10

=DATEDIF(H1,I1,"m")

שנים 0

=DATEDIF(H1,I1,"y")

למציאת הפרש מדוייק בשנים חודשים וימים בין 2 תאריכים מומלץ להשתמש בתקופות : Y , YM , MD

דוגמא לשילוב תוצאות של פונקצית DATEDIF כדי לחשב גיל או וותק מדויק של עובד .

חישוב וותק מדויק באקסל באמצעות הפונקציה datedif

 

ב ה צ ל ח ה !

אם ברצונך לשלוט היטב , להכיר ולהיות מומחה פונקציות תאריך זמן וטקסט באקסל ,
אני מזמינה אותך לקורס מומחה פונקציות תאריך וטקסט באקסל.
הקורס שתוך מספר שעות יעזור לך להיות אשף פונקציות טקסט תאריך וזמן באקסל.


תגובות

DATEDIF פונקציה באקסל לחישוב הפרש בין תאריכים — 67 תגובות

  1. תודה מיכל. פונקציה חשובה ושימושית עבורי.
    לא ידעתי על קיומה
    בוודאי שאעשה בה שימוש
    =

  2. תודה. פונקצייה סודית ושימושית.
    (בדוגמא: במקום תאריך לידה צריך כנראה להיות תאריך התחלה).

  3. מיכל שלום,
    תודה על המידע.

    אשמח אם תציגי סדרה של פונקציות שלא מופיעה ברשימת הפונקציות באקסל. dadedif יחסית מוכר..
    אני מאמין שרובנו ישמח לגלות עוד פונקציות חבויות כאלה..

    • מצטרף לבקשתו של שלומי.
      נשמח לקבל רשימת פונקציות נסתרות כאלו, אם יש ברשותך רשימה כזו.
      וגם, כרגיל, תודה רבה על הטיפ המצויין!

      • לא ידוע לי על רשימה כזו ולא זכורות לי עוד פונקציות נסתרות..
        datedif היא פונקציה שמייקרוסופט השאירה לצרכי תאימות עם גילינות אלקטרוניים קודמים,
        ואין לה תיעוד בעזרה

  4. פונקציה מדהימה ושימושית שחוסכת המון..!!
    תודות רבות!
    מירי

  5. תודה על הטיפ הנהדר….. המשיכי כך לגלות לנו את צפונות האקסל !!

    • שלום רציתי לשאול אני צריכה להציג את כל תאריכים שיש לי בחודש מסוים איך אפשר שיציג רק חודש מסוים (אני עובדת עם VBA)

      • שלום חנה,
        להצגת תאריכים רק בחודש מסוים את צריכה לסנן לפי חודש.
        תקליטי מאקרו ותעשי את הסינון .
        אם צריך שינויים תוסיפי.
        בהצלחה!

  6. שלום מיכל,
    פונקציה מאד מועילה. בעבר שילבתי 3 פונקציות כדי להגיע לתוצאה פחות מוצלחת…
    ובהזדמנות זו – תודה רבה על כל הטיפים, ועל העקביות בשליחתם.

  7. היי מיכל,
    ניסיתי לכתוב את הפונקציה והאקסל שלי לא מכיר אותה. מה ניתן לעשות?
    תודה,
    שירי

    • היי שירי,
      כתבתי שהפונקציה לא נמצאת בין הפונקציות שאקסל משלים,
      רבל אם תכתבי לפי ההוראות בטיפ הוא יפעל נכון.
      בהצלחה!

  8. היי מיכל,

    יש לי שאלה שאולי קצת פחות קשורה אבל אני לא מוצא לה פתרון בשום מקום.
    אני רוצה למשל לרוץ קדימה שנה מהיום, בתאריכים כמובן, אבל רק על ימים א-ה, האם אפשרי?
    שהאקסל ידלג על ימים שישי ושבת.

    תודה,

    • היי תומר,
      לא מכירה דרך שאקסל ידלג על שישי שבת,
      אבל אפשר ללמד אותו.
      1. תזין תאריכים בטווח הרצוי.
      2. בעמודה ליד באמצעות הפונקציה WEEKDAY באקסל תשלוף ליד כל תאריך את היום בשבוע.
      3. תמיין לפי העמודה של היום בשבוע בסדר עולה.
      4. למטה יש לך את כל ימי שישי שבת , תמחק אותם.
      5. כדי לקבל את התאריכים לפי הסדר , מיין לפי התאריך.
      ספר לנו בבקשה אם עזר לך.
      בהצלחה!

      • רעיון מאוד יפה. וגם שימושי בשבילי.
        אגב, בקשר למה שתומר כתב יש אפשרות למלא רק ימי חול – ללא שבת (בטח את מכירה את זה)

  9. היי מיכל,
    כרגיל שמח מכל טיפ שלך!

    אם אני מבצע את הנוסחה לתקופה נניח בין 1.1.15 – ל-31.1.15..
    האקסל נותן תשובה של 30.

    בפועל בתקופה הנ"ל יש 31 ימים….

    חוץ מפתרון "להוסיף +1"..יש פתרון אחר?

  10. טיפ מעולה ווואווו יש לי בעיה בחלק מהתאים (וכולם מעוצבים בטקסט ובכל זאת בחלק זה קורה ובחלק זה לא קורה ) שהתוצאה שמתקבלת היא רישום מדוייק של הנוסחה ולא התוצאה שרציתי כלומר אחרי לחיצה על האנטר אני מקבלת בתא את שורת הנוסחה מלמעלה מה אני עושה לא טוב?

  11. שלום ותודה על הפונקציה הנהדרת!
    האם יש פונקציה שמוסיפה זמן קדימה ומציגה תאריך?
    נניח אני רוצה להוסיף הוצאה של 1500 שח לחודש לתקופה של מספר חודשים ואני רוצה לדעת תאריך סיום?

    • יעקב באקסל באקסל תאריך מיוצג כמספר שלם עם עיצוב תאריך
      לכן לכל תאריך ניתן להוסיף מספר ימים רצוי בפעולת חיבור פשוטה
      אם התוצאה לא מעוצבת כתאריך ,מעצבים כתאריך
      בהצלחה!

  12. היי מיכל,

    תודה על הטיפ , לאחר הצבת תאריך התחלה וסוף אני מקבל תקופה בפורמט של שנים, חודשים וימים.
    האם אפשר לבדוק אם הערך שקיבלתי קטן או גדול משנה אחת ולקבל true /false ?

    תודה

  13. מיכל יקרה. פתרת לי בעיה של חישובי גיל למאות שורות/איש. אני מחפש פתרון כבר שנים ועושה זאת ידנית בחישובית המחשב. הפעם נפלתי עליך וזה נהדר. תודה תודה לך.
    המלצה שלי:: הורדתי את המילים שנים/חודשים ושמתי נקודה, צמצמתי רווחים בין הגרשיים (ללא שימוש בימים,אין לי צורך), הגדרתי כניסה מימין = קיבלתי עמודה נקייה של גיל (10.5-כדוגמא) .
    שוב תודה על העצה והשיתוף. שלמה

    • שלמה היקר,
      אני שמחה שעזרתי לך ,
      ומודה לך על תגובתך.
      לגבי ההמלצה שלך היא נכונה לצורך שלך,
      ברגע שמבינים איך זה עובד כל אחד יכול להתאים לצרכיו.
      בין הטיפים שלי לדעתי יש עוד טיפים שיכולים לעזור לך.
      בהצלחה!

    • שלמה, יכול בבקשה לצלם את הנוסחא שהקלדת ולשלוח לי ?

  14. היי מיכל.
    מזל שמצאתי אותך באינטרנט. ממש כייף לעבוד עכשיו עם אקסל. ואת זמינה ואדיבה.
    אני ממליצה לכל בתי העסק לרשום את עובדיהם לקורסים שלך. ממש חובה!

  15. היי, האקסל לא מזהה לי את הפונקציה הזו, מה עושים?
    בנוסף, אם הפורמט של התא זה תאריך ושעה (למשל 1\5\2016 07:35) יש דרך לחשב את ההפרש בין שני תאריכים בצורה הזו עד לרמת השעות /דקות?

    תודה

    • אור ,
      אקסל לא מזהה את הפונקציה ולכן צריך לכתוב לבד.
      כדי לחשב בכל רמת פרוט שאתה רוצה מחשבים כל חלק של זמן בנפרד ומצרפים

  16. היי מיכל, אני מנסה את הפונקציה DATEDIF אך לא מחשב לי את כמות הימים בין התאריכים אלא נותן שגיאה. מה אני עושה לא נכון?
    התאריכים הם: 3.2.2016 13.2.2016
    ("DATEDIF(A1,B1,"d=

    כמובן שיש לי שורות רבות להחיל עליהן את הפונקציה
    אודה לעזרתך הדחופה

    מ

  17. מיכל יקרה.
    עזרת לי מאוד מאוד.
    תודה רבה על המענה המהיר לשאלתי.
    יישר כח!

  18. היי מיכל תודה על הטיפ
    אשמח לעזרה כאשר אני כותב את הפונקציה הכתיב יוצא שונה ממה שרשום אצלך יוצא לי הפוך

    שנים 7 חודשים 14 ימים 10

    אני עובד OFFICE 13

  19. היי מיכל.

    מאוד מבקשת את עזרתך. הפונקציה פשוט לא עובדת לי. שגיאת #VALUE!

    =datedif(AT1,F4,"m")
    מקפידה על תאריך המוקדם בתא הראשון01.08.2016 והתאריך מאוחר בתא השני 31.10.2025

    לא מצליחה 🙁

    • מיכל, המון תודה על עזרתך. עזרת לי מאוד. אכן שיניתי מנקודה לסלש / והכל עבד.

      המון תודה לך

  20. תיקון לשוני.

    מיכל שלום

    את הטיפ קיבלתי ממך לפני מספר שנים, אך רק עכשיו הבנתי מדוע איני מצליח.
    מדובר בעניין סגנון לשוני.

    ב- YM את כותב כך: "מספר החודשים בנוסף למספר השלם של שנים". המשמעות [כך להבנתי] היא שהוספת האותיות האלו לפונקציה תיתן את מספר השנים וגם(!) את מספר החודשים העודפים על מספר שנים שלם. זו הרי המשמעות של המילה "בנוסף" ! שנה וגם חודשים.

    אלא שלא כך הוא !

    צמד אותיות אלו נותן את מספר החודשים העודפים(!) על מספר השנים השלם. אבל אינו(!) נותן את מספר השנים [ולכן המילה "בנוסף" לא נכונה !!! בהקשר זה].

    הדברים נכונים כמובן גם לשאר הצמדים YD MD.

    בברכה

    נחמיה

  21. היי מיכל,
    מכירה פונקציה שתוכל לחשב לי שנים קלנדריות,
    לדוגמא,לעניין ימי חופשה לצורך העניין.
    עובד שהתחיל לעבוד באוקטובר 2014 למרות שהוא עבד רק חלק מהשנה, לעניין ימי חופשה ,הרבעון שעבד יחשב לו לשנה אחת.שנת 2015 תחשב לו לשנה שניה וכו'..
    אני רוצה פונקציה שתפחית מהתאריך ב-2015 לא משנה באיזה חודש את תחילת העבודה (10/2014)
    ותחזיר לי 2 ,כלומר העובד עבד 2 שנים קלנדריות..
    אחדד,גם אם אפחית את 12/2014 מ1/2015 אקבל 2.
    תודה רבה ומקווה שהובנתי.

    • אלי ,
      אתה צריך להשתמש בשילוב 2 פונקציות
      ROUNDUP מעגלת כלפי מעלה כאשר NUM DIGITS =0 יעגל למספרים שלמים
      בתוכה הפונקציה YEARFRAC המחזירה מספר עשרוני המייצג חלק שנה במספר עשרוני.
      הסתדר?
      בהצלחה!

  22. כתבתי ועובד אך כתוב לי בסדר הפוך

    שנים 30 חודשים 12 ימים 3

    גם כשהפכתי בין הסדר בתוך הנוסחה עדיין אותה תוצאה.

    פתרון ?

  23. תודה רבה על הפונקציה
    האם יש אפשרות לחשב גם לפי שבועות (שבועות, ימים)?

  24. תודה רבה, טיפ מדהים.
    אודה לך אם תוכלי להסביר על פונקציה שיודעת להמיר פורמט של תאריך לדוגמא utc לunix

  25. היי מיכל, טיפ מעולה!! גיליתי אותך לאחרונה והעבודה שלי מתחילה להשתכלל. תודה ענקית!!!
    ברגע שיש לי תארי אחד שהוא נמוך יותר מהתאריך הראשון אז התוצאה NUM וכך אני לא יכולה להמשיך לעבוד על הפונקציה. ניסיתי לחבר עם IF (ז"א, IFׁׂׂׂ(DATEDIFׂ ולא הלך, יש לך דרך נוספת? בנוסף אשאל,
    ברגע שיש לי עמודה עם תאריך התחלה ועמודה שניה עם תאריך סיום.
    וברצוני לחלק את התאריכים לקטגוריות שונות. יש אפשרות נוספת חוץ מהפונקציה הנ"ל??

    • היי אדוה,
      נהדר שהטיפים מייעלים את העבודה שלך (:
      לגבי הפרש תאריכים , כדי שלא יצא מספר שלילי השתמשי בפונקציה ABS .
      מה הכוונה לחלק לקטגוריות? לאיזה קטגוריות את רוצה לחלק?

  26. מיכל יקריה,
    אם פעם חשבתי פעמיים לפני שאני מחפשת פתרון לבעיה מתוך מחשבה שאולי אמצע ואולי לא
    אחרי הטיפ הזה….- נראה כי יש לך מענה לכל שאלה ובעיה

    אין מילים
    מירי

  27. אם יש לי תאריך ואני רוצה לדעת מה יהיה התאריך אחרי מס' חודשים איך עושים את זה
    לדוגמה התאריך 1/1/19 מה יהיה התאריך בעוד 50 חודשים
    תודה רבה

    • יעקב, אתה צריך רק פעם אחת למצוא תאריך בעוד 50 חודשים.
      באקסל אין פונקציה מתאימה, באקסל VBA יש
      אבל,
      יש פתרון פשוט, בשבילו אני צריכה לתת נקודת עצירה
      50 חודשים – בטוח נכנסים ב-5 שנים נכון?
      לכן אתן תאריך עצירה לשנה ועוד 5 שנים בדוגמא שלך 1/1/2024
      עד לכאן הכנה בחשיבה.
      באקסל, בתא התאריך הרצוי לדוגמא 1/1/2019
      כרטיסייה בית, מילוי, סדרה, אקסל מזהה שמדובר בתאריך ולכן תאריך בבחירה.
      אם אתה רוצה את התוצאה תא ליד תשאיר על שורות, תא למטה בחר בעמודות
      יחידת תאריך – חודש
      ערך פסיעה 50 (רוצים תאריך בעוד 50 חודשים)
      ערך סיום 1/1/2024 (כפי שחשבנו קודם)
      ובהצלחה!

  28. הי מיכל. אולי את יודעת איך להמיר תאריך לועזי בתאריך עברי? תודה מראש

    • יש תוסף אקסל +, חפש באינטרנט
      אין לי מושג עד איזו גרסת אקסל זה עובד.
      בהצלחה!

  29. אחלה פונקציה אבל אין עושים שתפעל על תאריך שמלפני 1900?

להגיב על חיים לבטל

האימייל לא יוצג באתר. שדות החובה מסומנים *