EXCEL动态考勤表的制作
0.选中A1:AG1,合并单元格,输入="发发有限公司"&C2&"年"&F2&"月考勤表",注意&为连接符号,引用文字部分用英文双引号。
1.【文件】-【选项】-【自定义功能区】,找到“开发工具”打上钩,确定。
2.添加控件。点击D2单元格,【开发工具】-【插入】,选择“数值调节扭窗体控件”,在D2单元格画出一个按扭。右键点击该窗体控件,设置控件格式,在【控制】选项卡,当前值为2005,最大值最小值按需设置,步长值为1,单元格链接选择C2,确定。同样,在G2单元格插入窗体控件。在【控制】选项卡,当前值为3,最大值12,最小值为1,步长值为1,单元格链接选择F2,确定。在WPS中,【插入】-【窗体】-【微调项】。
3.日期更新。在C3单元格插入函数,=DATE(C2,F2,1),敲回车。点击C3单元格,CTRL+1快捷键设置单元格格式,在【数字】选项卡找到“自定义”选项,类型输入“d”(d代表日期格式),确定,则只显示日期的“日”。在D3单元格输入=C3+1,得到日期中的2号,点击D3单元格,鼠标放于右下角变黑色十字架时向右拖动填充,直至AG3单元格即31号。
4.星期更新。在C4单元格输入=C3,敲回车键。右键点击C4单元格设置单元格格式,在【数字】选项卡找到“自定义”选项,类型输入AAA,确定。即只显示星期的格式。然后右拉填充,直至AG4单元格。
5.选择A3:B4,合并单元格。在合并后的A3单元格,插入斜表头。点击A3单元格,【插入】-【形状】,选择直线,按下ALT键,从单元格左上角开始,点击鼠标左键不要松,往右下方拖动,自动对准单元格分界线交叉点时松开鼠标左键,再松开ALT键,即可画出一条斜线,同样的方法再画一条,对准另一个分界线交叉点。双击斜线,打开【格式】-【绘图工具】,在“形状轮廓”中设置颜色为黑色。
【插入】-【文本框】,选择“横排文本框”,在任意处划出一个框,输入“日期”,字号调整为9,点击文本框,在“文本工具”,填充选“无填充颜色”,轮廓选“无轮廓”,双击文本框,在【属性】-【形状选项】-【大小与属性】将左、右、上、下边距都设成0,调整文本框大小,再复制两份,文字分别改成“星期”“姓名”,分别拖动到左上方的斜线表格中,填充斜线表头。
6.选中A5、A6单元格合并单元格,然后选中A7、A8单元格,按下F4键(重复上一部操作),即可合并。也可以通过下拉填充方式快速合并单元格。B5单元格输入“上午”,B6单元格输入“下午”,同时选中B5、B6单元格,下拉填充。
7.在表格左上角名称框中输入“A1:AG16”,回车键,选中表格,添加“所有框线”。
8.高亮显示周六、周日。在表格左上角输入“C3:AG16”按回车键,从日期部分选中表格,【开始】-【条件格式】-【新建规则】-【使用公式确定要设置格式的单元格】,输入=WEEKDAY(C$3,2)>5,【格式】-【图案】选择需要的周末高亮填充颜色,确定。注意:weekday中第二个参数为1时代表从星期日到星期六为一星期;为2时代表从星期一到星期日为一星期;输入=WEEKDAY(C3,2)>5,选中函数的参数C3按下F4进行锁定,因为要判断的日期行号是固定不变的都是第3行,需要绝对引用,也就是要用F4锁定,但列是不固定的,不需要锁定,所以需将C前面的$符号删除,或者只需在3前面直接输入$符号即可。
9.设置隐藏非当月日期。在第三步日期填充到31日,但有30日、29日、28日的月份。在左上角名称框中输入“C3:AG16”按下回车,【开始】-【条件格式】-【新建规则】-【使用公式确定要设置格式的单元格】,输入=MONTH(C$3)<>$F$2,对于C3同样锁行不锁列,月份所在的F2单元格需绝对引用,F4锁定。然后点击【格式】-【数字】-【自定义】在类型中输入英文状态下的;;;(分号),确定,再确定。注意:通过MONTH函数获取日期中的月分与F2单元格月份进行比较,如果不等于就通过输入三个分号隐藏单元格内容。这样在调整年月时,非当月日期就会自动隐藏。