tft每日頭條

 > 生活

 > excel怎麼找不到dateif函數

excel怎麼找不到dateif函數

生活 更新时间:2024-11-29 04:34:02

今天來給大家講講DATEDIF函數,說起這個函數,80%的Excel用戶都很熟悉。

畢竟,它在計算年齡、間隔時間等工作中,應用廣泛。

=DATEDIF(開始日期,結束日期,返回類型)

這裡第3參數有六種表示方式:

excel怎麼找不到dateif函數(Excel裡的隐藏函數DATEDIF)1

看這個表可能有點暈,我們用圖示的方法來展示一下,用不同的顔色來标記時間距離。

excel怎麼找不到dateif函數(Excel裡的隐藏函數DATEDIF)2

下面我們通過一個案例,加深一下對這個函數的了解。

案例:

計算小朋友的年齡(按照“X歲X月X天"格式)。

excel怎麼找不到dateif函數(Excel裡的隐藏函數DATEDIF)3

這個公式比較長,其實它是3個部分組成的。

公式如下:

=DATEDIF(A2,TODAY(),"y")&"歲"&DATEDIF(A2,TODAY(),"ym")&"個月"&DATEDIF(A2,TODAY(),"md")&"天"

對比一下之前的示意圖,是第一行的三種表示方法。

excel怎麼找不到dateif函數(Excel裡的隐藏函數DATEDIF)4

這個函數非常實用,但是,這個日期函數,卻并不在Excel函數庫中!

那麼問題來了,如此好用卻要雪藏!到底是為什麼呢?

原來,函數雖好用,卻自帶BUG。

excel怎麼找不到dateif函數(Excel裡的隐藏函數DATEDIF)5

下面,我們來看一下這個表格,我們要計算不同的商鋪租賃的整月份。

輸入公式:=DATEDIF(開始日期,結束日期,"M")

excel怎麼找不到dateif函數(Excel裡的隐藏函數DATEDIF)6

這個公式應該沒錯呀?

為什麼最後一行,明明是一個月,計算出來卻是0個月呢?

這就是DATEDIF函數的BUG。

我們在計算整月份的時候,如果同時滿足下面兩個條件,這個BUG就會出現。

① 起止日期都是月末。比如這裡的,31和30都是當月的月末。

② 開始日期的“日”的值,大于結束日期的“日”的值,比如這裡,31日大于30日。

知道了BUG出現的條件,我們就可以想辦法規避它。

現下,我們可以把公式調整為:

excel怎麼找不到dateif函數(Excel裡的隐藏函數DATEDIF)7

完整的公式如下:

=IF((DAY(C2 1)=1)*(DAY(C2)<DAY(B2)),DATEDIF(B2,C2,"m") 1,DATEDIF(B2,C2,"m"))

最後再啰嗦兩點:

①如果結束日期是閏年的2月末的時候,可能會出現到28日就計算為一整年了,而不是29日。

②還有直接以“md”作為第三參數的時候,也會出現BUG,大家應避免用這個第三參數,改用其他函數替代。

好的,以上,就是今天的分享。

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关生活资讯推荐

热门生活资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved