ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 21631|回复: 80

[分享] 人力考勤核算探讨

  [复制链接]

TA的精华主题

TA的得分主题

发表于 2012-8-9 22:31 | 显示全部楼层 |阅读模式
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
人力考勤核算
最近几天已经看到几个人问了
我一般的方法都是使用数据透视表
按照人员、日期分组
获取打卡时间的最大值和最小值
这就是第一次打卡时间(最小值)
最后一次打开时间(最大值)
然后再根据这两个最值
用简单的判断函数IF
和上班时间和下班时间做对比
就可以得到是否迟到(最小值大于上班时间)
和早退(最大值小于下班时间)
最后再做进一步的统计就可以

此方法仅供参考
若大家有什么更好的方法
请一起发上来
大家一起分享一下

该贴已经同步到 little-key的微博

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2012-8-9 23:09 | 显示全部楼层
不过有一个前提
就是日期和时间要分两列
其次,日期和时间都是标准的格式
不能是文本,否则没法计算出来
日期可以
时间不可以
因为文本没法做最大值和最小值的计算

TA的精华主题

TA的得分主题

 楼主| 发表于 2012-8-9 23:10 | 显示全部楼层
以这个帖子(http://club.excelhome.net/thread-903987-1-1.html)为例。
第一步:
调整数据结构
将原来的这个数据结构


调整为这个样式


其中调整的日期和时间方法有两种:
1、分列,用空格作为分隔符;
2、用函数,但是需要转换为数值,我一般使用=--TEXT(,"YYYY-MM-DD")

TA的精华主题

TA的得分主题

 楼主| 发表于 2012-8-9 23:12 | 显示全部楼层
本帖最后由 little-key 于 2012-8-9 23:13 编辑

第二步
做数据透视表
找到两个最值
也就是每天上班时间和下班时间

先求最值,如下图所示


在调整格式和修改字段名称
如下图所示


为什么在第一步的时候需要将时间转为为标准的时间
就是为了这一步计算最大值和最小值

注意:
1、在【设计】---【报表布局】选择【以表格形式显示】
2、在【设计】---【报表布局】选择【重复所有项目的标签】

TA的精华主题

TA的得分主题

 楼主| 发表于 2012-8-9 23:13 | 显示全部楼层
第三步
判断是否迟到和早退
以9点上班、18点下班为例
如图所示


其中迟到判断公式:=IF(H3>TIME(9,0,0),"迟到","")
早退判断公式:=IF(I3<TIME(18,0,0),"早退","")

另外还要注意迟到和早退中,可能还有的是一天只卡一次卡的
或者都是下午打卡的
这些都需要另外核算

TA的精华主题

TA的得分主题

 楼主| 发表于 2012-8-9 23:14 | 显示全部楼层
第四步
考勤核算
1、将刚才的数据拷贝出来,为什么刚才要重复项目,就是为了这一步可以做到筛选和拷贝出来,以备做下一步计算;
2、针对第三步的特殊迟到和早退进行调整,并将请假等特殊原因考虑进去,对这个结果进行修正;
3、根据【员工编号】使用vlookup查询函数补上部门、员工姓名等个人信息,如果原来已经有,则这一步省略;
4、将修正后的结果再次用数据透视表,就可以直接得到迟到和早退的次数;

TA的精华主题

TA的得分主题

 楼主| 发表于 2012-8-9 23:15 | 显示全部楼层
我不是人力专业的
以上是根据我的经验
结合excel 的一些简单技术
解决一个实际问题

个人认为
使用数据透视表来处理这个考勤问题还是比较简洁的
特别是当数据量比较大的时候
数据透视表较函数更显高效

题外话
有的时候增加一些辅助列和步骤
不一定直接实现的要慢
要按需选择。

TA的精华主题

TA的得分主题

发表于 2012-8-10 09:13 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
{:soso_e120:}
好像是版主一个人在自说自话哦!
我这个观众,热烈鼓掌{:soso_e142:}{:soso_e142:}{:soso_e142:}!!!
感谢分享!收藏一下!用得着……

TA的精华主题

TA的得分主题

发表于 2012-8-10 11:32 | 显示全部楼层
ZTZJ30215 发表于 2012-8-10 09:13
好像是版主一个人在自说自话哦!
我这个观众,热烈鼓掌{:soso_ ...

这个版块的人气一直不是很旺。好多提出的问题也不是三两句话,一两步操作或者几个函数公式能搞定的。因此,最好的还是大家多积累,逐个知识点消化后能举一反三,灵活运用。

感谢版主的热心分享,咱们HR人自己也要努力,用好Excel解放的不仅是自己的双手,同时也提高了生产效率,让工作更有价值和意义。

TA的精华主题

TA的得分主题

发表于 2012-8-13 11:36 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
请问,要是三班倒的那种,怎么计算好呢
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

关闭

最新热点上一条 /1 下一条

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-4-19 20:28 , Processed in 0.046246 second(s), 13 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

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