Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 4543|回复: 9

[已解决]如果判断上下班时间是否异常

[复制链接]
发表于 2012-12-5 13:07 | 显示全部楼层 |阅读模式
具体要求请看附件中的说明,根据编号Mxxx来进行索引。要判断是否工作日,要对比实际打卡时间和标准的时间。

Copy of OT list.zip (127.06 KB, 下载次数: 50)
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2012-12-5 13:33 | 显示全部楼层
没有看明白你的意思
上下班时间是直接从打卡记录中提取呢?还是直接使用“Recovered_Sheet1”中的数据
回复

使用道具 举报

 楼主| 发表于 2012-12-5 13:49 | 显示全部楼层
hongqiqqq 发表于 2012-12-5 13:33
没有看明白你的意思
上下班时间是直接从打卡记录中提取呢?还是直接使用“Recovered_Sheet1”中的数据

上下班时间要从打卡记录中提取的,和F列的数据进行对比
回复

使用道具 举报

发表于 2012-12-5 14:26 | 显示全部楼层
lfspecter 发表于 2012-12-5 13:49
上下班时间要从打卡记录中提取的,和F列的数据进行对比

如果既迟到又早退,应该怎么样表示??
回复

使用道具 举报

发表于 2012-12-5 14:45 | 显示全部楼层
  1. =IF(OR(AND(WEEKDAY(A2,2)<6,LARGE((打卡记录!A$2:A$100=A2)*(打卡记录!B$2:B$100=D2)*打卡记录!C2:C100,1)<RIGHT(F2,5)),AND(WEEKDAY(A2,2)>5,LARGE((打卡记录!A$2:A$100=A2)*(打卡记录!B$2:B$100=D2)*打卡记录!C2:C100,1)>LEFT(F2,5))),"迟到或早退","正常")
复制代码
三键回车
你没有表述清楚,只好把异常的都放到一起了
先看看吧,不行你再提

Copy of OT list.zip

175.25 KB, 下载次数: 18

回复

使用道具 举报

 楼主| 发表于 2012-12-5 19:04 | 显示全部楼层
hongqiqqq 发表于 2012-12-5 14:45
三键回车
你没有表述清楚,只好把异常的都放到一起了
先看看吧,不行你再提

多谢回复,结果不是我要的。

我们可以用M4007,4009,4011三个编码12/11/01的数据来看,打卡记录里面只有4009的下班时间是20:14,只有他的是异常,其他正常。因为这个日子是工作日所有比对下班时间。
回复

使用道具 举报

发表于 2012-12-6 08:31 | 显示全部楼层    本楼为最佳答案   
lfspecter 发表于 2012-12-5 19:04
多谢回复,结果不是我要的。

我们可以用M4007,4009,4011三个编码12/11/01的数据来看,打卡记录里面只有 ...
  1. =IF(OR(AND(WEEKDAY(A51,2)<6,LARGE((打卡记录!A$2:A$4104=A51)*(打卡记录!B$2:B$4104=D51)*打卡记录!C$2:C$4104,1)>TIMEVALUE(RIGHT(F51,5))),AND(WEEKDAY(A51,2)>5,LARGE((打卡记录!A$2:A$4104=A51)*(打卡记录!B$2:B$4104=D51)*打卡记录!C$2:C$4104,2)<TIMEVALUE(LEFT(F51,5)))),"正常","迟到或早退")
复制代码
三键回车
不好意思,中间少写了一个时间转数值的函数
这下再试试,应该是你需要的了

Copy of OT list.zip

182.93 KB, 下载次数: 19

回复

使用道具 举报

 楼主| 发表于 2012-12-6 09:03 | 显示全部楼层
谢谢,
=IF(OR(AND(WEEKDAY(A51,2)<6,LARGE((打卡记录!A$2:A$4104=A51)*(打卡记录!B$2:B$4104=D51)*打卡记录!C$2:C$4104,1)>=TIMEVALUE(RIGHT(F51,5))),AND(WEEKDAY(A51,2)>5,LARGE((打卡记录!A$2:A$4104=A51)*(打卡记录!B$2:B$4104=D51)*打卡记录!C$2:C$4104,2)<=TIMEVALUE(LEFT(F51,5)))),"正常","迟到或早退")
准点打卡也算正常。呵呵
回复

使用道具 举报

发表于 2012-12-6 09:11 | 显示全部楼层
lfspecter 发表于 2012-12-6 09:03
谢谢,
=IF(OR(AND(WEEKDAY(A51,2)=TIMEVALUE(RIGHT(F51,5))),AND(WEEKDAY(A51,2)>5,LARGE((打卡记录!A$2: ...

呵呵 ,感谢你的评价
有道理,还是考虑不周全啊,离最佳还差一点儿
回复

使用道具 举报

发表于 2012-12-6 21:44 | 显示全部楼层
学习一下!!{:4212:}
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-27 03:24 , Processed in 1.241805 second(s), 12 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表