我認為 7 天是一周,所以如果我查看 2019 年 1 月 1 日至 2019 年 1 月 7 日,我會說這是 7 天。但我經常看到,當人們計算兩個日期或年齡之間的天數時,他們使用公式,B1-A1
其中A1
是開始日期/DoB,B1
是結束日期或今天的日期。對於上面的例子來說,這將給出 6。
我使用(B1-A1)+1
它給出 7 ,對於出生日期我會使用((B1-A1)+1)/365.25
。哪個是對的?
答案1
這不是一個公式正確而另一個公式錯誤的問題。這是一個你在尋找什麼的問題。
假設您每天 24 小時都在執行一項任務。您於 2000 年 1 月 17 日上午 9:00 開始任務,並於 2000 年 1 月 18 日上午 9:00 完成任務。如果問題是任務花了多少天?你會接受差價; 24 小時內答复1天。
然而,如果問題是您花了多少天完成這項任務?你會立即回應2
因此=B1 - A1
或=B1 - A1 + 1
可能是合適的,取決於您想要衡量的內容。
答案2
答案圍繞著 Excel 如何處理日期。當使用諸如 之類的公式計算日期之間的天數時B1-A1
,Excel 會將日期轉換為序號,並使用序號來計算之間的天數。
預設情況下,1900 年 1 月 1 日是序號 1,2008 年 1 月 1 日是序號 39448,因為距 1900 年 1 月 1 日已經過去了 39,447 天。微軟)
因此,1900 年 1 月 1 日到 1900 年 1 月 7 日之間的天數等於 7 減 1 等於 6。
這同樣適用於 1/1/2008 - 7/1/2008
2008年1月1日為39,447,
2008年1月7日為39,453
39,453 — 39,447 = 6
如果你想數日子包括的例如,您需要新增 1 以使公式為B1-A1+1
。
如果你想計算天數獨家的你需要減去 1 天的時間B1-A1-1
答案3
我想建議 3 個不同的公式來計算 2 個日期之間的年齡。
- 僅獲取年份:
=INT((B1-A1)/365)
或者,
=ROUNDDOWN(YEARFRAC(A1, B1, 1), 0)
或者,您TODAY()
也可以使用函數:
=ROUNDDOWN(YEARFRAC(A1, TODAY(), 1), 0)
若要取得以年、月和日為單位的完整年齡,請使用此工具。
=DATEDIF(A1,B1,"Y") & " Years, " & DATEDIF(A1,B1,"YM") & " Months, " & DATEDIF(A1,B1,"MD") & " Days"
編輯:
計算兩個日期之間的天數有點隨意。基本上要看需要。
- 計算天數,不包括開始日期。
- 計算天數,包括開始日期。
- 計算天數,不包括開始日期和結束日期。
考慮到 OP 的樣本日期,可以使用以下公式。
情況1的公式:
=DATEDIF(B2,B3,"d")
=DAYS(B3,B2)
=INT(B3-B2)
情況2的公式:
=DATEDIF(B2,B3,"d")+1
=DAYS(B3,B2)+1
=INT(B3-B2+1)
情況3的公式:
=DATEDIF(B2,B3,"d")-1
=DAYS(B3,B2)-1
=INT(B3-B2-1)
根據需要調整公式中的儲存格引用。