EXCEL表格中如何计算二个工作日(函数NETWORKDAYS)中加入正常工作时间的公式或函数?
答案:2 悬赏:60 手机版
解决时间 2021-03-06 23:15
- 提问者网友:回忆在搜索
- 2021-03-06 07:03
比如接收日期2007-4-23,时间17:57,完成日期2007-4-25,时间16:00。是在二个工作日内完成的。可是用函数NETWORDDAYS计算,算出来是三个工作日,没有把正常工作时间计算在内。寻求更好的函数或者公式解决,谢谢*^_^*
最佳答案
- 五星知识达人网友:詩光轨車
- 2021-03-06 07:28
NETWORKDAYS
返回参数 start-data 和 end-data 之间完整的工作日数值。工作日不包括周末和专门指定的假期。可以使用函数 NETWORKDAYS,根据某一特定时期内雇员的工作天数,计算其应计的报酬。
-----------------------------------------------
如果该函数不存在,请运行“安装”程序来加载“分析工具库”。安装完毕之后,必须通过“工具”菜单中的“加载宏”命令,在“加载宏”对话框中选择并启动它。
-----------------------------------------------
操作方法
语法
NETWORKDAYS(start_date,end_date,holidays)
Start_date 为代表起始日期的日期值。
End_date 为代表终止日期的日期值。
Holidays 为可选清单,指需要从工作日历中排除的日期值,如各种法定或自定假日。
说明
?如果任何参数为非法日期值,函数 NETWORKDAYS 返回错误值 #NUM!。
示例
NETWORKDAYS(DATEVALUE("10/01/91"), DATEVALUE("12/01/91"),
DATEVALUE("11/28/91")) 等于 43
返回参数 start-data 和 end-data 之间完整的工作日数值。工作日不包括周末和专门指定的假期。可以使用函数 NETWORKDAYS,根据某一特定时期内雇员的工作天数,计算其应计的报酬。
-----------------------------------------------
如果该函数不存在,请运行“安装”程序来加载“分析工具库”。安装完毕之后,必须通过“工具”菜单中的“加载宏”命令,在“加载宏”对话框中选择并启动它。
-----------------------------------------------
操作方法
语法
NETWORKDAYS(start_date,end_date,holidays)
Start_date 为代表起始日期的日期值。
End_date 为代表终止日期的日期值。
Holidays 为可选清单,指需要从工作日历中排除的日期值,如各种法定或自定假日。
说明
?如果任何参数为非法日期值,函数 NETWORKDAYS 返回错误值 #NUM!。
示例
NETWORKDAYS(DATEVALUE("10/01/91"), DATEVALUE("12/01/91"),
DATEVALUE("11/28/91")) 等于 43
全部回答
- 1楼网友:深街酒徒
- 2021-03-06 08:33
特殊假日的处理
虽然说直接应用networkdays()函数并不能得到正确的工作日天数,但我们还是可以通过对此函数的变化来得到。图3是我们的范例,演示了如何一步一步逼近我们的目标。
第一步:将a列定义为月份。选中a列,在右键菜单中选择“设定单元格格式”,在“数字”标签中选择“分类”为“自定义”,“类型”中输入“yyyy-mm”格式,单击“确定”按钮退出。
第二步:设计b列公式。先直接用networkdays()函数计算只考虑本月除去双休日后的天数。虽然可直接使用该函数,但需要知道每月的开始日期和终止日期。开始日期当然是每月的1日,用“date(year(a2),month(a2),1)”表示就ok了。结束日期应当是每月的最后一天,这就有些难度了,究竟是30日、31日还是28日、29日?需要一个复杂的判断关系。这里我们采用了一个变通的办法,就是当月的最后一天其实就是下月的第一天再减去1天,所以我们可以用“date(year(a2),month(a2)+1,1)-1”来表示。于是b2的公式就有了:“=networkdays(date(year(a2),month(a2),1),date(year(a2),month(a2)+1,1)-1)”。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯