处理日期数据时如何根据打卡日期判断其是否为周末加班

时间:2016-04-14   作者:snow   来源:互联网

在使用Excel处理日期数据时,经常需要判断某个日期是否为周末。如图 189‑1所示为某企业员工上下班打卡记录,如何根据打卡日期判断其是否为周末加班?


图189‑1打卡记录

解决方案1

使用MOD判断周末。

操作方法

选择E3:E10单元格区域,输入下列公式,按<Ctrl+Enter>组合键结束。

=IF(MOD(C3,7)<2,"周末","工作日")

原理分析

MOD函数判断星期几

1.根据一个星期7天周而复始的特性,将星期几判断问题视为数字循环问题,使用MOD函数将日期对7求余数。

2.根据Excel中1900日期系统的特性,数字1表示1900-1-1,按星期日计算(虽然实际应为星期六,但该日期系统错误地多了一个不存在的1900年2月29日,因此1900-3-1及此后的星期数判断恢复正常)。因此,将日期除以7求余数,余数为0则为星期六,余数为1,则为星期日,因此只需判断余数是否小于2,即可判断出日期是否为周末。

如果要用数字1~7表示星期一至星期日,可以使用以下公式:

=MOD(日期-2,7)+1

解决方案2

使用WEEKDAY判断周末。

操作方法

选择F3:F10单元格区域,输入下列2个公式之一,按<Ctrl+Enter>组合键结束。

=IF(OR(WEEKDAY(C3,2)={6,7}),"周末","工作日")

=IF(WEEKDAY(C3,2)>5,"周末","工作日")

原理分析

WEEKDAY函数判断星期几

本例设置WEEKDAY函数第2参数为2,返回C列日期的星期数字,其中6代表星期六、7代表星期日,因此只需判断WEEKDAY函数的返回值是否等于6或7或大于5,即可判断出对应日期是否为周末。

WEEKDAY函数用于返回某日期为星期几。默认情况下,其值为 1(星期天)到 7(星期六)之间的整数。语法如下:

WEEKDAY(serial_number,[return_type])

其中,第1参数serial_number为用于计算星期几的日期,第2参数return_type为用于确定返回值类型的数字,如表格 189‑1所示。

tag : 日期   周末
发表评论