一、用到excel函数:
if() :判断是否满足某个条件,如果满足返回一个值,如果不满足则返回另一个值。.
round() :按指定的位数对数值进行四舍五入.
match() :返回符合特定值特定顺序的项在数组中的相对位置.
sumif():对满足条件的单元格求和.
二、表格结构
大概有2万条要是手动整理肯定累死了,我们整理一下用作示例版。
示例:第一步点击选中K2单元格,输入公式点确认,这个时候K2单元格会显示结果
2、在表格的左上方输入要计算的行数冒号左边是开始行右边是结束行,然后回车会选中
3、点一下公式处,按住alter 加回车就会全部显示值
这个时候会发现如果一天打开多次他们的值是分开的。我们需要一个总量
2.1、这个时候已员工编号加日期在创建一列
2.2、这个时候我们去重,普通的去重会换行,我们把重复的替换成空格,新的一列M就出来了
2.3、最后一步,求一天的工作总时间,到现在为止就算完成了辅助列可以删掉了。
公式:
----求前后时间的时长
= if((E3-E2)*24>13,0,if((E3-E2)*24<0,0,ROUND((E3-E2)*24,2)))
----创建辅助列用户编号加日期
=D2&"-"&MONTH(E2)&"月"&DAY(E2)
-----分组删除重复数据
=if(match(l2,$l:$l,0)=ROW(l2),l2,"")
------分组求和得出最终时长
=if(sumif($l:$l,m2,$K:$K)<=0,"",sumif($l:$l,m2,$K:$K))
值得注意的是跨天加班的那种要单独手动处理一下
第一次弄,不太好用,弄了一晚上,大家有什么建议可以指导我