简易公式,快速制作Excel动态日历(补碱简易公式)

本文的标题是《简易公式,快速制作Excel动态日历》来源于:由作者:陈鹏羽采编而成,主要讲述了本周同学会专栏,我分两期,简单介绍一下Excel日历的制作及应用。今天,先跟我来用最简单的公式,制作一张E

本周同学会专栏,我分两期,简单介绍一下Excel日历的制作及应用。

今天,先跟我来用最简单的公式,制作一张Excel动态日历。


简易公式,快速制作Excel动态日历(补碱简易公式)

▲ 目标效果

第1步:设计框架

我们将日历固定到7列——周一到周日,最多需要6行就可以展示一个月的所有天数。


简易公式,快速制作Excel动态日历(补碱简易公式)

B2、D2单元格用来选择年份和月份,B4:H4区域输入周一至周日。

第2步:编写公式

日历中看似有很多单元格,但实际上最关键的一个单元格就是B5单元格。B5单元格的公式确定了,后面的单元格只要依次加1就OK。

B5单元格的日期怎么确定呢?


简易公式,快速制作Excel动态日历(补碱简易公式)

由于周一到周日的位置是固定的,而每个月的第1天究竟是周几是不固定的,因此我们要做判断:

如果月份第1天恰好是周一,那B5单元格就应该返回当月的1号这天的日期;否则,就根据当月1号实际是星期几来计算这一天的日期。

以2021年1月1日为例,这一天实际是星期五,应该填入F5单元格。因此,B5单元格应该是往前推4天,即2020年12月28日(用2021/1/1-5+1)。

把以上的逻辑用公式表达出来,B5单元格的公式为:

=IF(WEEKDAY(DATE($B$2,$D$2,1),2)=1,DATE($B$2,D$2,1),DATE($B$2,$D$2,1)-WEEKDAY(DATE($B$2,$D$2,1),2)+1)

其它单元格只要依次+1天就好,因此最简单的公式就是用上一个单元格加1,比如C5单元格公式:=B5+1。


简易公式,快速制作Excel动态日历(补碱简易公式)

当然,如果你觉得这种方式不能一次把公式**到所有日期单元格,也可以写一个更厉害的公式:


简易公式,快速制作Excel动态日历(补碱简易公式)

接下来,选中所有日期单元格,打开单元格格式,设置自定义格式:dd。


简易公式,快速制作Excel动态日历(补碱简易公式)

这样,所有日期都只显示天数。


简易公式,快速制作Excel动态日历(补碱简易公式)

第3步:条件格式

经过第2步,日历的雏形就完成了,但是由于42个日期单元格中都显示天数,而我们只希望展示当月的天数。

简单!用条件格式做一个判断——如果单元格日期对应月份与D2单元格相同,说明是本月日期要展示;否则,如果不等于D2单元格,则不展示。

选择B5:H10,设置条件公式:=MONTH(B5)<>$D$2,并将条件格式设置为自定义格式:;;;(三个英文的分号)。


简易公式,快速制作Excel动态日历(补碱简易公式)

确定后,非当月的日期就自动“消失”了!


简易公式,快速制作Excel动态日历(补碱简易公式)

为了方便选择年月,你还可以将B2和D2单元格设置为下拉单元格。这样,一个动态的Excel日历就做好了。


简易公式,快速制作Excel动态日历(补碱简易公式)

最后,如果你想做一张全年12个月的日历,只要将已经做好的日历另外**11份,做简单调整即可。


简易公式,快速制作Excel动态日历(补碱简易公式)

你看,原来自己动手做一张日历也并不难呀,是不是?

下一期,我接着来跟大家介绍Excel日历的用途,在我们实际工作中,能有哪些应用价值。

简易公式,快速制作Excel动态日历(补碱简易公式)
本文原作者为陈鹏羽,转载请注明:出处!如该文有不妥之处,请联系站长删除,谢谢合作~

原创文章,作者:陈鹏羽,如若转载,请注明出处:http://www.kaicen.cn/20220516325647.html