用excel函数判断一个日期是工作日还是休息日。

前期准备工作(包括相关工具或所使用的原料等)
excel/函数判断一个日期是否为周末(周六、周日)可以用weekday()函数:
=if(weekday(today(),2)>=6,"周末","不是周末")
但是要判断一个日期是否为休息日,就要复杂一些,因为要涉及到法定节假日、调休和调整工作日等。

表格所列是国务院办公厅公布的2015年节日假期和调整工作日的安排。
名词解释:
节日假期——法定节假日放假的日期。
调整工作日——本来是周末双休日,但因节日假期的安排而调整为工作日。

现在我们来分析一下,一个日期是休息日需要满足下面两个条件之一:
1. 是节日假期
2. 是周末同时不是调整工作日
换言之,两个条件只要满足一个就是休息日,如果两个都不满足,就是工作日。
用Excel函数表述是这样:
if(是节假日,"休息日",if(是周末,if(不是调整工作日,"休息日","工作日"),"工作日"))

假设要判断的日期放在E2单元格。上面表述中三个条件:“是节日假期”、“是周末”、“不是调整工作日”分别用函数代替。
是节日假期(在B列中能找到E2的值)--COUNTIF(B:B,E2)>=1
是周末(是一周中的第6或第7天)--WEEKDAY(E2,2)>=6
不是调整工作日(在C列中找不到E2的值)--COUNTIF(C:C,E2)=0
最终的公式如下:
=if(COUNTIF(B:B,E2)>=1,"休息日",if(WEEKDAY(E2,2)>=6,if(COUNTIF(C:C,E2)=0,"休息日","工作日"),"工作日"))
把公式复制到F2单元格。

这是公式计算结果:

示例文档下载地址:
http://pan.baidu.com/s/1ntNxEdz
经验内容仅供参考,如果您需解决具体问题(尤其法律、医学等领域),建议您详细咨询相关领域专业人士。作者声明:本教程系本人依照真实经历原创,未经许可,谢绝转载。- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
