![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLicmbw5iMjdDM0MmM3I2NjZGMzkjZkVTYyUjM2MzM1AzNyQmMw8CX0JXZ252bj91Ztl2Lc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
工作中會經常遇到處理
日期的需求,比如:
人事部門要做一份員工工齡統計...
财務部門需要計算一下每項業務的付款周期...
下面我們通過一個案例,來看下如何解決這類“日期間隔”的問題,讓你在職場中如魚得水。
現有一份電商嬰兒資料報表,裡面記錄了電商網站上購買的嬰兒商品資訊,比如嬰兒的出生日期,購買商品的日期。現在上司要求快速計算出嬰兒“”年齡“這一列裡的值,該如何實作呢?
1)用“出生日期”列得到嬰兒的出生年份
2)用“購買日期”列得到目前的年份
3)年齡=目前年份 - 出生年份
雖然通過上面兩種方法,我們可以達到目的。但是,
如果業務需求不隻是求年齡呢?比如還要求月份差,天數差呢?此時,趕緊呼喚我們的主角出場:datedif函數
現在,把舞台交給他...
先做一下自我介紹吧!
大家久等啦!我叫datedif,是函數家族的成員之一。但是我天生内向,大家可以叫我隐數。
什麼是隐藏函數呢?
在電影《哪吒》裡,大家藏起來,被哪吒找出來,就是“隐藏”。
同樣的,隐藏函數,顧名思義就是在函數清單中是找不到的。
輸入datedif的前幾個字母後無法通過Tab鍵來補全函數
我來具體示範一下吧。
1.年份差當“傳回值”是2個日期的年份內插補點時,第3個參數寫y,并用雙引号包裹。
"y":傳回兩個日期之間的整年數差,不足一年的不累計
公式寫好之後,将公式填充到整列,就傳回了年齡值
問:假如我的需求不是年齡,而是月齡呢?
答:“y”替換成“m”即可
"m":傳回兩個日期之間的整月數,不足一個月的不累計
問:假如我的需求不是年齡,而是間隔天數呢?
答:“y”替換成“d”即可
"d":傳回兩個日期之間的整天數
公式寫好之後,将公式填充到整列,傳回間隔天數
火眼金晶的童鞋早就看出了一處問題,一直在等待,案例中總有一處傳回值#NUM(上圖中黃色塊的地方),為什麼呢?
答:召喚我做任務時,有一個潛規則:第一個參數(起始日期)必須小于第二個參數(結束日期),否則就會傳回#NUM。
4.與其他函數結合使用此外,在實際應用中,datedif函數還經常嵌套today函數(表示目前日期)來實作某些目的。
比如想計算一下自己資料分析學了多久呢?以提醒自己是否要加快速度。
datedif的第一個參數寫"開始日期",即N2單元格
第二個參數寫today(),用今天的日期代表"結束日期"
第三個參數寫"d",即結果傳回天數
根據上述原理,我們可以進一步制定一份學習進展表,友善每日更新進展
在0列輸入datedif函數,=datedif(N2,today(),"d")
再用公式填充整列,即可傳回每一項學習任務已開展的天數
現在,學會了datedif函數來處理日期問題,你的工作效率是不是提升了很多?
推薦:你必須要學會,1個各行各業通用的技能