靈活掌握Excel工作日的計算的函數(shù)教程
時間:
若木1由 分享
在Excel中,有時候根據(jù)工作的需要,我們經(jīng)常需要對日期進行加減運算,從而得到這兩個日期之間所產(chǎn)生的差數(shù),而將一個日期值與一個表示天數(shù)的常數(shù)相加減,則能夠得到一個距離該日期x天的日期值。如:“2010/05/31”-“2010/05/01”得到31,“2010/05/01”加上90得到“2010/07/30”。這在excel中是一個非常簡單又實用性很強的日期計算功能。
可是,完美的東西肯定有一些局限性的,使其無法滿足更高層次的需要,特別是“工作日”這一概念逐漸在各領(lǐng)域被廣泛應用的今天,許多工作都需要進行與之相關(guān)的計算。最常見的例如員工的出勤天數(shù)、交貨期的計算、付款日的計算等等。excel為用戶的這些需求提供了怎樣的解決方案呢?
1、使用networkdays()函數(shù)
networkdays(start_date,end_date,holidays)函數(shù)是用來計算兩個日期值之間完整的工作日數(shù)值。這個工作日數(shù)值將不包括雙休日和專門指定的其他各種假期。
networkdays()函數(shù)帶有3個參數(shù):start_date表示開始日期,end_date為結(jié)束日期,holidays表示作為特定假日的一個或多個日期。這些參數(shù)值既能夠手工輸入,也能夠?qū)卧竦闹颠M行引用。下面以計算本年5月份共有多少個工作日為例,具體介紹networkdays()函數(shù)的用法:在b1中輸入起始日期“2010/05/01”,在b3中輸入終止日期“2010/05/31”,在e2、e3中輸入法定假日“2010/05/01”和“2010/05/02”。通過公式“=networkdays(b2,b4,e2:e3)”咱們就能夠方便地計算出5月份的工作日數(shù)了。當然,咱們也能夠直接輸入公式“=networkdays(″2010-5-1″,″2010-6-1″,{″2010-5-1″,″2010-5-2″})”來得到這個結(jié)果。
2、使用workday()函數(shù)
workday(start_date,days,holidays)函數(shù)是用來計算某日期(開始日期)之前或之后相隔指定工作日的某一日期的日期值。它也帶有3個參數(shù):start_date表示開始日期,days為start_date之前或之后不含周末及節(jié)假日的天數(shù)。days為正值將產(chǎn)生未來日期;為負值產(chǎn)生過去日期,holidays表示作為特定假日的一個或多個日期。
在b1中輸入起始日期“2010/05/01”,在b3中輸入合同規(guī)定時間“90”,在e2、e3中輸入法定假日“2010/05/01”和“2010/05/02”。通過公式“=workday(b2,b4,e2:e3)”,咱們能夠清楚的理解交貨日期是“2010/09/05”。同上,咱們還能夠直接輸入公式“=workday(″2010-5-1″,90,{″2010-5-1″,″2010-5-2″})”來進行計算。
3、加載擴展函數(shù)
已經(jīng)迫不及待地打開excel進行嘗試的朋友可能非常想去實踐了,你說的這兩個函數(shù)我這兒怎么沒有啊?別急,點擊“工具”菜單中的“加載宏”,找到“分析工具庫”,給它一個小勾,再“確定”,ok!原來,這兩個函數(shù)是嵌于“分析工具庫”這個加載宏中的excel擴展函數(shù),而excel在默認狀態(tài)下是不加載這個加載宏的。
另外一個值得注意的問題是:將表示日期的單元格的數(shù)字格式設(shè)置成“日期”型,而表示天數(shù)的單元格則千萬不要設(shè)置成“日期”型,否則你可能會看到“1900/02/21”或“36774”這些數(shù)字出現(xiàn)。
好了,基本上excel上的功能是非常強大的,只需要我們?nèi)ヂ诰?,一定會非常好的?
可是,完美的東西肯定有一些局限性的,使其無法滿足更高層次的需要,特別是“工作日”這一概念逐漸在各領(lǐng)域被廣泛應用的今天,許多工作都需要進行與之相關(guān)的計算。最常見的例如員工的出勤天數(shù)、交貨期的計算、付款日的計算等等。excel為用戶的這些需求提供了怎樣的解決方案呢?
1、使用networkdays()函數(shù)
networkdays(start_date,end_date,holidays)函數(shù)是用來計算兩個日期值之間完整的工作日數(shù)值。這個工作日數(shù)值將不包括雙休日和專門指定的其他各種假期。
networkdays()函數(shù)帶有3個參數(shù):start_date表示開始日期,end_date為結(jié)束日期,holidays表示作為特定假日的一個或多個日期。這些參數(shù)值既能夠手工輸入,也能夠?qū)卧竦闹颠M行引用。下面以計算本年5月份共有多少個工作日為例,具體介紹networkdays()函數(shù)的用法:在b1中輸入起始日期“2010/05/01”,在b3中輸入終止日期“2010/05/31”,在e2、e3中輸入法定假日“2010/05/01”和“2010/05/02”。通過公式“=networkdays(b2,b4,e2:e3)”咱們就能夠方便地計算出5月份的工作日數(shù)了。當然,咱們也能夠直接輸入公式“=networkdays(″2010-5-1″,″2010-6-1″,{″2010-5-1″,″2010-5-2″})”來得到這個結(jié)果。
2、使用workday()函數(shù)
workday(start_date,days,holidays)函數(shù)是用來計算某日期(開始日期)之前或之后相隔指定工作日的某一日期的日期值。它也帶有3個參數(shù):start_date表示開始日期,days為start_date之前或之后不含周末及節(jié)假日的天數(shù)。days為正值將產(chǎn)生未來日期;為負值產(chǎn)生過去日期,holidays表示作為特定假日的一個或多個日期。
在b1中輸入起始日期“2010/05/01”,在b3中輸入合同規(guī)定時間“90”,在e2、e3中輸入法定假日“2010/05/01”和“2010/05/02”。通過公式“=workday(b2,b4,e2:e3)”,咱們能夠清楚的理解交貨日期是“2010/09/05”。同上,咱們還能夠直接輸入公式“=workday(″2010-5-1″,90,{″2010-5-1″,″2010-5-2″})”來進行計算。
3、加載擴展函數(shù)
已經(jīng)迫不及待地打開excel進行嘗試的朋友可能非常想去實踐了,你說的這兩個函數(shù)我這兒怎么沒有啊?別急,點擊“工具”菜單中的“加載宏”,找到“分析工具庫”,給它一個小勾,再“確定”,ok!原來,這兩個函數(shù)是嵌于“分析工具庫”這個加載宏中的excel擴展函數(shù),而excel在默認狀態(tài)下是不加載這個加載宏的。
另外一個值得注意的問題是:將表示日期的單元格的數(shù)字格式設(shè)置成“日期”型,而表示天數(shù)的單元格則千萬不要設(shè)置成“日期”型,否則你可能會看到“1900/02/21”或“36774”這些數(shù)字出現(xiàn)。
好了,基本上excel上的功能是非常強大的,只需要我們?nèi)ヂ诰?,一定會非常好的?