計算兩個日期之間的天數、月數或年數。
警告: Excel 提供 DATEDIF 函數,以支援來自 Lotus 1-2-3 的較舊活頁簿。 不過在特定情況下,DATEDIF 函數可能會算出錯誤的結果。 如需詳細資料,請參閱本文的已知問題小節。
語法
DATEDIF(start_date,end_date,unit)
引數 |
描述 |
||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
start_date 必要 |
代表指定期間的第一個或開始日期的日期。 日期可以在引號內以文字字串的形式輸入 (例如, “2001/1/30”) ,例如,36921 的序列值 (例如,36921 代表 2001 年 1 月 30 日,如果您使用的是 1900 日期系統) ,或是其他公式或函數的結果, (例如 DATEVALUE (“2001/1/30”) ) 。 |
||||||||||||||
end_date 必要 |
代表期間最後一個或結束日期的日期。 |
||||||||||||||
Unit |
您要傳回的資訊類型,其中:
|
註解
-
日期是以連續的序列值來儲存,以便用來執行計算。 根據預設,1900 年 1 月 1 日是序列值 1,而 2008 年 1 月 1 日因為是 1900 年 1 月 1 日之後的第 39,447 天,所以其序列值是 39,448。
-
若您需要計算年齡時,公式中的 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") |
2001 年 6 月 1 日到 2002 年 8 月 15 日之間共有 440天 (440) |
2001/6/1 |
2002/8/15 |
=DATEDIF(Start_date,End_date,"YD") |
忽略日期中的年,6 月 1 日到 8 月 15 日之間共有 75 天 (75) |
已知問題
"MD" 引數可能會導致負數、零值或不正確的結果。 如果您嘗試計算從最終月份起算的剩餘天數,以下是因應措施:
此公式會以 E17 儲存格中的原始結束日期 (5/6/2016) 減去結束月份的第一天 (5/1/2016)。 以下是公式計算的方式:首先,DATE 函數建立了日期:5/1/2016。 接著,它會使用 E17 儲存格中的年份,以及 E17 儲存格中的月份來產生結果。 而 1 則代表該月份的第一天。 DATE 函數的結果是 5/1/2016。 然後,我們會以 E17 儲存格中的原始結束日期減去上述結果,也就是 5/6/2016。 5/6/2016 減去 5/1/2016 等於 5 天。
需要更多協助嗎?
您可以隨時詢問 Excel 技術社群中的專家,或在社群中取得支援。