ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

[求助] 用excel做自动考勤表,遇到问题

[复制链接]

TA的精华主题

TA的得分主题

发表于 2009-7-22 23:43 | 显示全部楼层 |阅读模式
我想根据 这个课程做个 自动记录的考勤表 。可我是07的, 这个教程是按02的版本做的, 做到 录制宏就找不到 该怎么往下做了,求高人指点一下哈。哪位大侠能帮我按这个做个考勤表出来哈 ?我做到宏的那个地方 时间总显示不对, 录制宏开始, 输入的那个公式 应该输在 什么位置?我按钮都按照做出来了,可做出来的按钮没用哈
  用Excel制作自动记录的考勤表
     单位传统的考勤登记方式有工作量大、出错几率高、统计分析麻烦等特点,现在已经进入了信息时代,为何不用电脑来帮我们进行考勤呢?用Excel 2002制作简单、快捷、准确的考勤表,你就能切身体会到信息时代的方便与快捷。
  一、基本框架设置

  首先要进行的工作当然就是新建工作簿,在工作表中输入姓名、日期,制订考勤表的基本框架。

  1. 启动Excel 2002,新建一个工作簿,命名为“2004年员工考勤表”,在工作簿中建立12个工作表。

  2. 在当月工作表的A1、B1单元格中分别输入“姓名”、“日期”,在A2单元格中输入第1个员工的姓名,接着选择A2、A3单元格,然后单击“合并及居中”按钮将两个单元格合并为1个单元格,按照以上方法录入其他员工的姓名(如图1)。



图1创建考勤表

  3.在单元格C1中输入“7-1”,程序将自动转成“7月1日”(这里假定考勤从7月1日开始)。用鼠标点选单元格C1,并移 动鼠标到单元格的右下角,待出现实心“十”字的填充柄后,按住左键拖动到需要的位置,这样在7月1日后便形成了一个日期序列。

  4.单击日期序列最后的“自动填充选项”智能填充标记,在弹出来的菜单中点选“以工作日填充”项,程序便自动将星期六、日去掉,不记入考勤日期。

  5.选中整个日期行,在“单元格格式”对话框中点选“日期”选项卡。在“分类”列表中点选“自定义”项,在类型框中输入“d"日"”,然后单击“确定”按钮。

  二、录制宏

  1.点选工作表中的任意一个单元格,然后单击“工具→宏→录制新宏”菜单项,进入“录制新宏”对话框。在“宏名”框中输入准备录制的宏的名称——“返回当前时间”,“确定”后即进入宏的录制阶段(如图2)。



图2“录制新宏”对话框

  2.输入公式“=now( )”,然后按回车键,接着单击“停止录制”工具栏中的“停止录制”按钮结束录制。

  三、制作宏按钮

  1.单击“视图→工具栏→绘图”菜单项,调出“绘图”工具栏,接着选择“绘图”工具栏中的“绘图→对齐→对齐网格”项。

  2.单击“视图→工具栏→窗体”菜单项,调出“窗体”工具栏,然后单击“窗体”工具栏上的“按钮”,接着在单元格B2中拖动鼠标绘制一个按钮,Excel将自动打开“指定宏”对话框,点选其中的“返回当前时间”宏,并单击“确定”按钮(如图3)。

  
图3 选择“返回当前时间”宏

  3.单击按钮,将按钮上的文字更改为“上班”,并对文字大小、字体进行设置。然后单击“绘图”工具栏上的“选择对象”按钮,并按住“Ctrl”键,用鼠标将刚才制作的按钮拖到B3中,即将制作好的按钮复制到B3中,并将按钮上的问题更改为“下班”。

  4.确认“绘图”工具栏上的“选择对象”按钮被选中,单击“下班”按钮,然后按住“Shift”键再单击“上班”按钮,将两个按钮同时选中。单击“Ctrl”键,用鼠标将选中的两个按钮拖动复制到B列的其余单元格中。最后效果如图4。



图4 创建“上、下班”按钮宏

   四、记录出勤

  选中待插入上下班时间的单元格,单击同一行中的“上班”或“下班”按钮即可。在单击“上班”、“下班”按钮时会返回很长一串数字,其实我们只需输入诸如“13:30”这样的时间即可。 单击“格式→单元格”菜单项,在弹出来的“单元格格式”对话框中点选“数字”选项卡,在分类框中点选“时间”,在“类型”框中点选“13:30”,最后单击“确定”即可。

  要把出勤记录由公式结果转换成具体的时间数值,否则当公式被重新计算后,其结果将更改。选中表中的所有数据单元格,单击右键选择“复制”,点选“编辑→选择性粘贴”菜单项,在“选择性粘贴”对话框中选中“数值”项,然后单击“确定”。

  五、统计结果

  1.在日期行之后的单元格中依次输入“迟到”、“早退”、“病假”、“事假”等需要统计的项目。并将这几列中的单元格上下两两合并,使之对应于姓名行(如图5)。



图5 创建相关统计项目

  2.单击单元格Y2,然后键入公式“=COUNTIF(C2:X2,">8:30")”(这里假设上班时间为8:30),并按回车键,Z2单元格中便会出现选中员工所有迟于8:30上班的工作日天数。同理在Z2单元格中输入公式“=COUNTIF(C3:X3,">17:00")”(假设下班时间为17:00),并按回车键,Z2单元格中便会出现选中员工所有早于17:00下班的工作日天数。

  3.单击AB2单元格输入公式“=COUNTIF(C2:X3,"事假")”,并按回车键确认,AB2单元格中便出现了选中员工本月的事假次数。

  4.其他人的统计方法可以利用Excel的公式和相对引用功能来完成。

  5.单击“工具→选项”菜单项,在弹出的对话框中点选“重新计算”选项卡,并单击“重算活动工作表”按钮。这样所有员工的考勤就全部统计出来了。

[ 本帖最后由 alho0717 于 2009-7-23 01:06 编辑 ]

TA的精华主题

TA的得分主题

发表于 2009-7-23 09:24 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
大概浏览了一下楼主的描述,应该不是做图表的问题!况且也没有附件

TA的精华主题

TA的得分主题

 楼主| 发表于 2009-7-23 09:41 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
对哦, 我应该把帖子放在表格里面哈
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-5-3 00:49 , Processed in 0.032480 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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