第一步:画表格
打开一张空白的 EXCEL 工作表,先按下图所示画出样子。
图中 M1:P1 是合并单元格,用于填写“年”,S1:T1 是合并单元格,用于填写“月”,为了醒目设置成浅蓝色底纹。
第二步:设置公式
为了让第二行中的“星期”能自动显示,需要设置公式,如下:
在 D2 单元格中输入公式 =IF(WEEKDAY(DATE($M$1,$S$1,D3),2)=7," 日 ",WEEKDAY(DATE($M$1,$S$1,D3),2))
这时就能看到 D2 单元格中出现一个表示星期的“日”字(这说明 2011 年 5 月 1 号是星期日)。
公式含义:先用 DATE 函数把 M1 格中的“年”、S1 格中的“月”、D3 格中的“日”组成一个电脑能识别的“日期”;再用 WEEKDAY 函数把这个“日期”变成星期所代表的数字。
WEEKDAY 函数后面加了参数“2”,是为了让星期一显示为“1”,让星期二显示为“2”… 让星期日显示为“7”。
由于我们不习惯把星期日叫成“星期 7”,所以最后用 IF 函数做判断,把显示为“7”的自动改成“日”。
提示:函数 DATE 与 WEEKDAY 在 EXCEL 自带的帮助中有详细的用法介绍,想了解它们的朋友可以参考。
为了方便我们中国人的习惯,还要把显示为阿拉伯小写数字的星期变成中文数字,即“星期 1”变成“星期一”这种格式。这就需要通过定义单元格格式来实现。
选中 D2 单元格,按鼠标右键“单元格格式”,在出现的格式窗口中选“数字”选项卡,在左侧的“分类”框中选“特殊”,在右侧的“类型”框中选“中文小写数字”,按“确定”退出。
这些完成后就可以用鼠标选中 D2 单元格,按住它右下角的“填充柄”拖动复制 AH2 单元格,效果如下图:
在 AI 单元格中可以通过公式显示当月的总天数,公式 =DAY(DATE(M1,S1+1,1)-1)
公式含义:先由 DATE 函数“DATE(M1,S1+1,1)”得到本月的下一个月月初 1 号的日期。本例中,本月是 5 月份,下一月的月初一号就是 6 月 1 日。
再用减 1 得到本月最后一天的日期,即 5 月 31 日,最后再由 DAY 函数取出表示当月天数的“31”。
下面就是考勤录入方面了
第三步:考勤符号
先设定一些考勤符号,放在 AR 列中
这些符号并非统一规定,可根据习惯及喜好来自己设定,也可用汉字来代表,总之自己看着习惯就行了。
怎么把这些符号方便快捷的输入到考勤表中 D4:AH33 区域中呢?我们采用下拉框的方法。
选中 D4:AH33 区域,按上面工具栏中的“数据 - 有效性”,弹出有效性设置对话框,选“设置”选项卡,在“允许”中选“序列”,在“来源”中点击右端的折叠按钮,然后用鼠标在表格中选取 AR1:AR8 区域,再次点击折叠按钮,回到有效性设置窗口,按“确定”退出。
完成后,在考勤表的 D4:AH33 区域中任意一个单元格选中时,都会出现一个下拉框按钮,点击按钮就弹出下拉框,可用鼠标方便的选取要输入的考勤符号。
第四步:考勤统计
考勤已经可以输入了,怎样统计每个人的出勤情况呢?还是通过公式自动来统计。
先划出一块区域来做考勤统计,如下图红圈范围:
这个区域中要设置多个合并单元格,AK4:AK5 是合并的,AL4:AL5 是合并的 ……AP4:AP5 是合并的。也就是每一个姓名对应的上下两行需要合并,这样方便把上午与下午统计在一个格中。
做完 AL4:AP5 区域的合并操作后,选中区域右下角填充柄,按住鼠标左键向下拉动,一直到 AP33 单元格再松开鼠标左键,就能快速的把下面单元格分别也变成合并状态。(其实就是复制了 AL4:AP5 的样式)
由于第一个人的考勤记录区域是 D4:AH5 区域,所以需要将此区域中的考勤符号出现次数统计出来,就能知道这个人的考勤情况了。
先在 AK3:AP3 中输入考勤符号,然后在 AK4 单元格中输入公式 =COUNTIF($D4:$AH5,AK$3)
公式含义:使用 COUNTIF 函数统计 D4:AH5 区域内出现了几次 AK3 格中的符号。
用拖动复制功能把这个公式复制到 AK4:AP4 区域中。
再选中 AK4:AP4 区域,按住 AP4 右下角的填充柄向下拖动复制,一直复制到 AP33 单元格。
现在统计区域中的每个格都有公式了,由于公式中某些部份使用了绝对引用符号“$”,所以在拖动复制中,每个单元格的公式都是不太一样的。
提示:在这个考勤表中,多次使用了“拖动复制”方法,可以极大的简化输入公式与设置格式的操作,而且在公式中灵活使用绝对引用符号“$”,也能把有规律变化的公式快速输入到区域中,避免了逐个输入的麻烦。
现在我们看一下有统计公式的效果
在统计结果中,会有许多 0 值出现,表示对应的考勤符号未在考勤区域中出现,0 值太多时会感觉很“乱”,我们通过设置来“隐藏”这些 0 值。
按工具栏中的“工具 - 选项”,出现选项窗口,按下图设置,去掉“零值”前的勾,就可使这些 0 值不显示出来。
第五步:设置条件格式
到这里,考勤表基本上就完成了。细心的朋友会发现一个小问题,就是 AF3、AG3、AH3 这三个格中始终出现 29、30、31 这三个日期,即使在 2 月份只有 28 天的情况下也是如此,感到非常不爽。
我们可以用条件格式的方法来让它们自动根据月份的变化来显示或隐藏,即小月时 AH3 格变成空白,大月时才显示 31,在二月份时如果不是闰月,就不显示 AF3、AG3、AH3 格中的数字。
选中 AF3:AH3 区域,按“格式 - 条件格式”,按下图设置:
用这种条件格式的方法还能设置 D2:AH2 区域,让它们在星期六与星期日时变成不同颜色,能更直观的显示每周情况,设置方法大家可以自己琢磨一下。
经验内容仅供参考,如果您需要解决具体问题(尤其在法律、医学等领域),建议您详细咨询相关领域专业人士。
原文链接:https://zhuanlan.zhihu.com/p/111111761