我们都知道当数据过多的时候,我们制作Excel图表就会显得非常的复杂,图表上面的内容就会特别多。Excel老玩家就会想到用切片器制作动态可变化的图表来显示。今天我们就来学习一下一个比......
2023-01-08
在工作中常用到考勤表,那么如何做一份考勤表,可以每个月都使用呢,那么就需要让考勤表的表头动态生成日期和星期,我在几期视频中也讲过,但总觉讲的不太清楚,那么今天就用图文的形式来说明下。
动态考勤表的核心就是一连串的日期函数,尤其是today函数,是实现动态考勤表的核心,其他的还要使用到文本连接符&,还有日期函数year,month,day。过程呢很简单,我们先来说这几个函数的用法。
today(),返回当前的日期。比如今天是2020年8月4日,那么在单元格输入=today(),就返回2020-8-4,如果到了明天,你再打开就是2020-8-5,打开考勤表或者按F9刷新,就能看到变化。
year(日期):返回当前日期的年部分。
month(日期):返回当前日期的月部分。
day(日期):返回当前日期的日部分。
1.生成考勤表动态标题
函数解读:
=TODAY() 获取当前的日期
=YEAR(D5) 获取日期的年部分
=MONTH(D5) 获取日期的天部分
=D6&"年"&D7&"月考勤表" 使用&连接符将几部分拼接到一起。
2.获取最大天数
要动态生成日期,因为每个月有28天,30天,或者31天,所以要生成日期,必须判断一个月的最大天数,而excel中并没有提供获取一个月最大天数的函数,如果我们能获取到下一个月的第一天,那么减去1,就是当月的最大天数。
函数解读:=DATE(D6,D7+1,1)
date函数的三个参数分别为年月日,在月的部分我们+1,就转化成了下一个月,第三个参数是1,就是一个月的第一天。
=D9-1 用获取的日期减去1,就是当月的最后一天。
然后=DAY(D10),获取到了天数。
3.根绝列号生成天
函数解读=COLUMN(B:B)-1
COLUMN(B:B) 返回B列的列号,因为是第二列,所以减去1,然后向右拖拽即可生成1-31的天数,这里有一个问题,最大是31天,最小是28天
所以我们使用COLUMN(B:B)-1和最大天数对比,如果小于最大天数,就正常显示日期,如果大于就显示空值。
4.生成表头
公式解读:=IF(COLUMN(B:B)-1<=$D$11,COLUMN(B:B)-1,"")
向右边拖拽31天即可。不月份不是31天的时候,比如28天,那么后三列显示为空。
5.生成星期数据
公式解读:=DATE($D$6,$D$7,B3)
使用date函数生成日期。然后在设置单元格格式中设置为显示星期的形式。这样表头就直接动态起来。以上呢就是动态考勤表的生成过程。
相关文章
我们都知道当数据过多的时候,我们制作Excel图表就会显得非常的复杂,图表上面的内容就会特别多。Excel老玩家就会想到用切片器制作动态可变化的图表来显示。今天我们就来学习一下一个比......
2023-01-08
在工作中,可能许多朋友都会碰到一个情况,那就是工作簿和工作表数据的合并操作。如何将上百个工作簿快速合并到一个表格中,许多朋友可能会觉得不可思议。今天我们就来教大家学习一......
2023-01-08
今天在这里为你分享5个Excel文本函数,这些拆分和组合函数,你一定会用上的。①LEFT函数公式:=LEFT(A2,1)在Excel表格中,需要想要拆分汉字,想从哪里开始就从那哪里开始。首先选定单元格......
2023-01-08
相信大家也和我一样,才开始看到Excel可以当做翻译软件的时候会很好奇,这究竟是怎样做到的?其实,这个方法并不是很难,它是由一个函数公式而制作出来的,好了,首先我们一起来看看成......
2023-01-08
函数可以说是所用快捷方法中最为简单的一种方法,为什么很多人认为函数用起来很难了?主要是因为它拥有很长的函数公式,记不住。其实不管是学Excel函数,还是学习其他的一些快捷方法......
2023-01-08