资源描述
如何在如何在 excelexcel 中实现工作日的计算中实现工作日的计算在 excel 中,通过将两个日期值进行减运算,可以得到这两个日期之间所间隔的具体天数;而将一个日期值与一个表示天数的常数相加减,则可以得到一个距离该日期 x 天的日期值。如:“2000/05/31”“2000/05/01”得到31,“2000/05/01”加上 90 得到“2000/07/30”。这是 excel 提供的一个虽然简单却相当实用的日期计算功能。然而,这一功能在实际工作中的局限性,使其无法满足更高层次的需要,特别是“工作日”这一概念逐渐在各领域被广泛应用的今天,许多工作都需要进行与之相关的计算。最常见的比如员工的出勤天数、交货期的计算、付款日的计算等等。excel 为用户的这些需求提供了怎样的解决方案呢?使用 networkdays()函数 networkdays(start_date,end_date,holidays)函数是专门用于计算两个日期值之间完整的工作日数值。这个工作日数值将不包括双休日和专门指定的其他各种假期。networkdays()函数带有 3 个参数:start_date 表示开始日期,end_date 为终止日期,holidays 表示作为特定假日的一个或多个日期。这些参数值既可以手工输入,也可以对单元格的值进行引用。下面以计算本年 5 月份共有多少个工作日为例,具体介绍 networkdays()函数的用法:在 b1 中输入起始日期“2000/05/01”,在 b3 中输入终止日期“2000/05/31”,在 e2、e3 中输入法定假日“2000/05/01”和“2000/05/02”。通过公式“=networkdays(b2‚b4‚e2:e3)”我们就可以方便地计算出 5 月份的工作日数了。当然,我们也可以直接输入公式“=networkdays(200051‚200061‚200051‚200052)”来得到这个结果。使用 workday()函数 workday(start_date,days,holidays)函数是用来计算某日期(起始日期)之前或之后相隔指定工作日的某一日期的日期值。它也带有 3 个参数:start_date 表示开始日期,days 为 start_date 之前或之后不含周末及节假日的天数。days 为正值将产生未来日期;为负值产生过去日期,holidays 表示作为特定假日的一个或多个日期。假设我们在 4 月 30 日与客户签订了一份购销合同,合同规定 90 个工作日之后交货。那么,我们应该怎样计算到底哪一天交货呢?在 b1 中输入起始日期“2000/05/01”,在 b3 中输入合同规定时间“90”,在e2、e3 中输入法定假日“2000/05/01”和“2000/05/02”。通过公式“=workday(b2‚b4‚e2:e3)”,我们可以清楚的知道交货日期是“2000/09/05”。同上,我们还可以直接输入公式“=workday(200051‚90‚200051‚200052)”来进行计算。加载扩展函数 已经迫不及待地打开 excel 进行尝试的朋友可能要嚷了,你说的这两个函数我这儿怎么没有啊?别急,点击“工具”菜单中的“加载宏”,找到“分析工具库”,给它一个小勾,再“确定”,ok!原来,这两个函数是嵌于“分析工具库”这个加载宏中的 excel 扩展函数,而 excel 在默认状态下是不加载这个加载宏的。另外一个值得注意的问题是:将表示日期的单元格的数字格式设置成“日期”型,而表示天数的单元格则千万不要设置成“日期”型,否则你可能会看到“1900/02/21”或“36774”这样奇怪的结果出现。小编寄语:会计学是一个细节致命的学科,以前总是觉得只要大概知道意思就可以了,但这样是很难达到学习要求的。因为它是一门技术很强的课程,主要阐述会计核算的基本业务方法。诚然,困难不能否认,但只要有了正确的学习方法和积极的学习态度,最后加上勤奋,那样必然会赢来成功的曙光。天道酬勤嘛!
展开阅读全文