在提到日期計(jì)算時(shí),幾乎所有的Excel圖書中都會(huì)提到一個(gè)隱藏函數(shù)——DATEDIF。這個(gè)函數(shù)的確挺好用,但令人奇怪的是,這居然是個(gè)隱藏函數(shù),你甚至在Excel的幫助信息里也找不到它。 這個(gè)函數(shù)是用來計(jì)算兩個(gè)日期之間的間隔時(shí)間的,它的用法是: DATEDIF(開始日期,結(jié)束日期,返回類型) 第三參數(shù)有Y、M、D、YM、YD、MD六種,返回的內(nèi)容大致如下圖所示。 特別注意,第二個(gè)參數(shù)的日期必須大于第一個(gè)參數(shù)的日期。 也就是結(jié)束日期要大于開始日期的,否則的話,Excel就暈了。 舉個(gè)例子吧: 開始日期是2011年3月3日,結(jié)束日期是2014年5月15日,下面這張表顯示了各個(gè)參數(shù)的不同意義: 好了,根據(jù)這個(gè)函數(shù)的特性,我們就可以設(shè)置員工生日提醒了。 假如你們公司在員工生日當(dāng)天會(huì)送禮物啥的,你得提前去購買。因此你希望在員工信息表里能設(shè)置一個(gè)提醒,這時(shí)你就可以借助這個(gè)函數(shù)來處理。 所謂生日,必須包含月和日,而包含月和日的第三參數(shù)只有“yd”,因此,這里就是用這家伙。 但是可不可以用下面的公式來計(jì)算兩個(gè)日期之間的間隔呢? =DATEDIF(出生日期,TODAY(),'yd') 比如今天5月24日,員工出生日期是1980年5月29日,用上面這個(gè)公式返回結(jié)果是360天。 對(duì)于這種情況,可以做個(gè)小小的處理,假設(shè)我們希望提前10天提醒,就這么處理:“出生日期”-10。 公式為: =DATEDIF(出生日期-10,TODAY(),'yd') 該公式返回的結(jié)果是2,也就是說這兩個(gè)日期實(shí)際差了10-2=8天。只要用10減去DATEDIF的計(jì)算結(jié)果就可以了: =10-DATEDIF(出生日期-10,TODAY(),'yd') 好了,現(xiàn)在可以來設(shè)置提醒了。 下面是模擬的員工檔案表,D4單元格的公式為: =TEXT(10-DATEDIF(C4-10,TODAY(),'yd'),'還有0天生日;;今天生日') 咱們以前學(xué)習(xí)過TEXT函數(shù)的用法,這里把DATEDIF函數(shù)的計(jì)算結(jié)果作為TEXT函數(shù)的參數(shù)。 '還有0天生日;;今天生日'的意思是: DATEDIF函數(shù)的計(jì)算結(jié)果大于0的,顯示為“還有N天生日”; 小于0的不顯示; 等于0的顯示為“今天生日”。 提示: 由于DATEDIF函數(shù)第二參數(shù)在使用“YD”時(shí)有特殊的計(jì)算規(guī)則,因此當(dāng)結(jié)束日期是3月份時(shí),計(jì)算結(jié)果可能會(huì)出現(xiàn)一天的誤差,需要注意判斷一下。 好啦,今天的內(nèi)容就是這些,光說不練假把式,有空要?jiǎng)邮衷囈幌屡丁?/span> 祝所有5、6月份過生日的表親們快樂~ |
|