Excel精英培训网

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

关于考勤时间取半点和整点的问题请教

[复制链接]
发表于 2019-5-19 12:53 | 显示全部楼层 |阅读模式
1学分
本帖最后由 yhxv 于 2019-5-19 12:53 编辑

做考勤时遇到要取半点(包含整点)的情况,每隔半小时一个时间段。比如上班打卡是往后取,如9:01打上班卡,视作9:30;9:45视作10:00;下班卡往前取,如打卡时间18:01,视作18:00;18:35,视作18:30。需要计算:
1、实际打卡时间对应的时间点;
2、计划时间与实际打卡时间的差额;

是否可以通过公式实现呢?
原始数据如下图及附件,谢谢!

考勤记录与分析

考勤记录与分析



考勤记录及分析.zip (6.58 KB, 下载次数: 27)

excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2019-5-19 16:05 | 显示全部楼层
D2
=IF(A2="上班",ROUNDUP(48*TIMEVALUE(RIGHT(C2,LEN(C2)-FIND(" ",C2))),)/48,ROUNDDOWN(48*TIMEVALUE(RIGHT(C2,LEN(C2)-FIND(" ",C2))),)/48)
单元格 格式为 时间

E2
=24*60*(TIMEVALUE(RIGHT(B2,LEN(B2)-FIND(" ",B2)))-D2)
单元格格式为 常规
=====================================
D列 是 真时间 ,  不是24小时制 就要 另显示 上下午
E列 你的结果 正负值不稳定 , E4 与 E6 一正一负 , 逻辑不通.

回复

使用道具 举报

 楼主| 发表于 2019-5-19 20:32 | 显示全部楼层
砂海 发表于 2019-5-19 16:05
D2
=IF(A2="上班",ROUNDUP(48*TIMEVALUE(RIGHT(C2,LEN(C2)-FIND(" ",C2))),)/48,ROUNDDOWN(48*TIMEVALUE(R ...

谢谢答复!E4是因为视作6:30打卡,算加班30分钟,所以是“+30”,E6视作5:30打卡,相对于早退,所以认为是“-30”,“+”表示比原计划多出来的分钟数量,“-”表示比原计划少的分钟数量,不知道你说的逻辑不符是指哪里?

原有格式(A/B/C是原有数据,D/E是我辅助添加的):
考勤记录及分析(原格式).JPG


请问这种格式(因公司原始数据就是这种格式表达),是否要转换成为如下上下班各一列的格式?即“上班”一列,“下班”一列?这样更好用公式填充。


我的想法其实就是想知道是否有:(1)、迟到,(2)早退,(3)加班,如果有,那迟到早退加班的值是多少,要怎么设计(含转换格式)表格比较合理?谢谢!

回复

使用道具 举报

发表于 2019-5-21 21:32 | 显示全部楼层
yhxv 发表于 2019-5-19 20:32
谢谢答复!E4是因为视作6:30打卡,算加班30分钟,所以是“+30”,E6视作5:30打卡,相对于早退,所以认为 ...

1) 逻辑问题 开机错误 - 副本.png
09:00 上班
09:01 打卡算迟到
09:46 打卡算加班?

2) 我发不了附件 ,

    E2=24*60*(D2-TIMEVALUE(RIGHT(B2,LEN(B2)-FIND(" ",B2))))*IF(A2="上班",-1,1)
    单元格格式 为常规

    这个应该满足 1楼的要求.

3) 一个帖子一般只针对一个问题 , 每个单位有自己的具体情况 , 别人没法提前知道.



回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-19 17:02 , Processed in 0.796885 second(s), 10 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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