關鍵字:日期公式
欄目:函數
小夥伴們,你們好呀~
Excel中與日期有關的公式很常見,涉及到在賬戶應付款處理、項目日程安排、時間管理等很多方面。
今天給大家分享幾個與星期、工作日相關的公式,例如計算兩個日期間的工作日數、判斷一個日期是否為周末等。
小夥伴們,趕緊來看一看吧!
5個案例,都很實用,财務必備,新手可以多看看,增加對函數的理解。
案例1:如何判斷某個日期是否為周末?
人事部需要對1月份有加班記錄的日期判斷是周末還是工作日,效果如圖所示。
為了方便大家驗證結果,用=TEXT(B2,"AAAA")公式備注了一下。
示例中判斷周末的公式為:=IF(WEEKDAY(B2,2)>5,"周末","工作日")
公式解析:
這個公式中,WEEKDAY函數的第2參數為2,得到的就是B列日期的星期數字, 6代表星期六、7代表星期日,因此隻需判斷 WEEKDAY 函數的返回值是否大于 5,即可判斷出對應日期是否為周末。
案例2:如何計算離職員工最後一個月的實際工作天數?
=MAX(NETWORKDAYS(EOMONTH(B2,-1)+1,B2)-IFERROR(VLOOKUP(C2,$F$2:$H$8,3,0),),)
公式解析:
①EOMONTH(B2,-1)+1得到的是離職月的1号;
②NETWORKDAYS函數得到離職月1号至離職日期之間的工作日天數(不含周六和周日);
③VLOOKUP(C2,$F$2:$H$8,3,0)的作用是匹配出離職月的法定節假日天數;
④使用IFERROR函數将沒有法定節假日的月份返回0,否則會得到錯誤值無法計算;
⑤工作日天數-法定節假日是最終的上班天數,加上一個MAX防止出現負數。
這個公式比較複雜,有需要的話套用即可。
案例3:如何計算兩個日期間星期日的天數?
某公司要給員工在一段時間内周日上班的補發津貼,因此需要統計出周日的天數,結果如圖所示。
NETWORKDAYS.INTL函數是Excel 2010版才有的函數,特點是第三參數可以使用代碼來指定需要統計周幾的天數。
例如“1111110”這種格式中,1表示休息,0表示上班,0在第七位,表示周日上班。函數統計兩個日期之間的上班天數,也就是周日的天數。
如果要統計兩個日期之間周二的天數,隻需要将第二位用0表示即可,代碼為“1011111”。
案例4:根據訂貨日期推算交貨日期?
已知訂貨日期和交貨期限(工作日),可以使用=WORKDAY(B2,C2)來推算出具體的交貨日期。
注意,這個示例中的交貨期限是指不含周六周日的天數,所以不能直接用訂貨日期+交貨天數來計算。
WORKDAY函數就是根據指定日期來推算出若幹個工作日之後的日期,格式為:WORKDAY(開始日期,天數)。
案例5:推算母親節的具體日期?
有些特殊的節日,比如母親節、父親節、感恩節等,其節日是根據特定月中的第幾個星期幾來定義的,如果要确定其日期就變得比較棘手。
例如母親節是每年5月的第2個星期日,知道年份的話就可以用公式=CEILING(DATE(A2,4,30),7)+8來推算出該年的母親節的具體日期。
公式解析:
①DATE(A2,4,30) 是指定年份4月30日的日期;
②利用CEILING函數将日期向上舍入到最接近的7的倍數(在Excel中,7的倍數所代表的日期序列正好都是星期六);
③得出5月份第一個星期六的日期,再加8,就是5月份第2個星期日即“母親節”的日期。
這個公式利用了1900日期系統的特性,如果不明白的話套用公式即可。
今天分享的這五個例子,在日期類的問題中算是比較有難度的,涉及的函數大家平時也用的不多,建議收藏起來以備不時之需。
|
有話要說...