在Excel中判断星期六、星期日是否加班,可通过WEEKDAY
或MOD
函数结合条件判断实现,核心公式为=IF(OR(WEEKDAY(A1,2)=6, WEEKDAY(A1,2)=7), "加班", "非加班")
,同时可搭配条件格式高亮显示周末日期,实现自动化统计。
-
基础函数应用
-
WEEKDAY
函数:设置参数return_type=2
时,返回1(周一)至7(周日),通过判断返回值是否为6(周六)或7(周日)即可标记加班。例如:=IF(OR(WEEKDAY(A1,2)>5), "加班", "非加班")
。 -
MOD
函数:利用日期序列号对7取余,余数0为周六、1为周日,公式如=IF(MOD(A1,7)<2, "加班", "工作日")
,适合1900日期系统。
-
-
进阶自动化处理
- 条件格式高亮:选中日期列,设置规则公式
=OR(WEEKDAY(A1,2)=6, WEEKDAY(A1,2)=7)
,自动为周末填充颜色,直观区分加班日。 - 批量计算时长:若需统计加班小时数,可用
=(结束时间-开始时间)*24
结合条件判断,如=IF(WEEKDAY(A2,2)>5, (C2-B2)*24, 0)
,直接汇总周末工时。
- 条件格式高亮:选中日期列,设置规则公式
-
实际案例演示
假设A列为日期,B、C列为上下班时间,在D列输入公式=IF(OR(WEEKDAY(A2,2)=6, WEEKDAY(A2,2)=7), (C2-B2)*24, 0)
,拖动填充即可生成周末加班时长列表,最后用SUM
函数汇总总时长。
提示:对于复杂考勤规则(如调休或节假日),可结合NETWORKDAYS
函数或VBA扩展逻辑,确保统计结果精准匹配企业政策。