Excel-DATEDIF函數計算兩日期天數差


問題場景


  • 根據任務的開始時間和實際完成時間計算該任務花費了多少天。

  • 根據任務的預計完成時間和實際完成時間判斷該任務按期還是逾期。

場景一


  • 計算每個任務從開始到完成花費了多少天。

img

目標


  • 計算兩日期之間的天數。

解決方案


用DATEDIF()函數實現。

  • 函數解釋:
=DATEDIF(start_date,end_date,unit)
#Start_date 開始日期
#End_date 結束日期。
#Unit 為所需信息的返回類型,一般有6個類型:"Y","M","D","YM","YD","MD"
  • 例如:
=DATEDIF(A1,TODAY(),"Y")
#計算年數差
=DATEDIF(A1,TODAY(),"M")
#計算月數差
=DATEDIF(A1,TODAY(),"D")
#計算天數差
#TODAY()獲取本地系統當前日期,再與A1單元格的日期做對比。
  • 第一步:在G2單元格英文狀態下輸入:=DATEDIF(D2,E2,"D")。

    • 公式解釋:計算E2與D2兩日期的天數差。

img

  • 第二步:鼠標移到G2單元格的右下角,出現實心的黑色【+】號,雙擊填充此公式。

img

  • 第三步:最后結果。

img

注意Days()函數:


  • datedif()函數是WPS的函數庫自帶,Days()函數是office的函數庫自帶,都可以計算兩日期天數差。

  • WPS自帶函數庫不支持DAYS()函數。

  • office可以輸入datedif()函數計算,但在某些應用場景下,DATEDIF 函數計算結果可能並不正確。例:start_date大於 end_date,結果返回#NUM。

  • 函數解釋:

#Office支持DAYS()函數,WPS不支持
=DAYS(end_time,start_time)
#End_date 結束日期。
#Start_date 開始日期。

場景二


  • 判斷每個任務是否在按預計完成時間之前完成。

img

目標


  • 用預計完成時間和實際完成時間對比,看任務是按期還是逾期。

解決方案


用IF()和datedif()函數嵌套實現。

  • 第一步:在G2單元格英文狀態下輸入:=IF(DATEDIF(E2,F2,"d")>=0,"按期","逾期")。

    • 公式解釋:如果預計完成時間-實際完成時間返回的天數大於或等於0,則返回"按期",否則該任務“逾期”。

img

  • 第二步:鼠標移到G2單元格的右下角,出現實心的黑色【+】號,雙擊填充此公式。

img

  • 第三步:最后結果,圈出來的為逾期任務。

img

總結


實際業務場景復雜時,如果不能一次性解決問題,可擇優使用、或可結合使用,多嘗試,辦法總比困難多!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM