大家好,2022 年都已经过去 4 天了,大家去年的目标都完成了吗?
文章插图
新的一年需要新的日历,最近我看到好多人在晒他们收到的新年日历 。然鹅,我没收到,不开心~
文章插图
这时,坐在电脑前的我看到了 Excel,突然想到,我可以给自己做个日历啊,既能省钱,还能按照自己的心意 DIY!!!
如下图: 通过控件切换月份,日历中的日期,农历,以及休班状态自动更新!
文章插图
是不是特别炫酷?
文章插图
?
接下来,我就来揭开这份日历表的层层面纱 。
01*** 外观
首先我们要 *** 日历表的外观,在日历表中,每个格子是三行两列的,行格为 6,列格为 7 。
E3 单元格为 2022,对应数字格式为 0 年,E4 单元格为 1,对应数字格式为 0 月 。
文章插图
?
事先准备好参数表 。
文章插图
▋插入控件
在【开发工具】选项卡下,点击【插入】-【数值调节钮】 。
文章插图
右键控件,选择【设置控件格式】 。
文章插图
?
设置对象窗口中,最小值为 1,更大值为 12,单元格链接为 F4 。(月份为 1-12,所以最小值为 1,更大值为 12)
文章插图
PS. 如果没有【开发工具】选项卡,在【文件】-【选项】-【自定义功能区】中调出 。
文章插图
基本的外观 *** 好后,下面就是编写公式啦 。
文章插图
02 编写公式
如下图,在 E7 单元格中输入如下公式:
=DATE($E$3,$F$4,1)-WEEKDAY(DATE($E$3,$F$4,1),2)+INT(COLUMN(A:A)/2)+INT((ROW(1:1)-1)/3)*7</span></code>
文章插图
如下图,在 F7 单元格中输入如下公式:
=IF(MONTH(E7)=$F$4,IFERROR(VLOOKUP(E7,参数表!$A:$D,4,0),""),"")
文章插图
如下图,在 E8 单元格中输入如下公式:
=IF(MONTH(E7)=$F$4,IFERROR(VLOOKUP(E7,参数表!$A:$D,3,0),""),"")
文章插图
最后填充公式就可以啦~ 如动图所示,选择 E7:F9,向右向下填充公式 。
文章插图
小 tips: E7 单元格函数公式:
=DATE($E$3,$F$4,1)-WEEKDAY(DATE($E$3,$F$4,1),2)+INT(COLUMN(A:A)/2)+INT((ROW(1:1)-1)/3)*7
其中前面一半公式是求:当前月 1 号上一个星期日的日期 。
=DATE($E$3,$F$4,1)-WEEKDAY(DATE($E$3,$F$4,1),2)
后半段则是求:当前月 1 号上一个星期日的,也就是前半段公式得出的日期 。需要加上多少间隔数,才能得出当前单元格的日期 。
=INT(COLUMN(A:A)/2)+INT((ROW(1:1)-1)/3)*7
文章插图
比如说,2022 年 1 月 1 号,就是当前月 1 号前一个周日的日期(2021 年 12 月 26 号)+6 。
文章插图
?
F7 单元格函数公式:
=IF(MONTH(E7)=$F$4,IFERROR(VLOOKUP(E7,参数表!$A:$D,4,0),""),"")
如下图,如果是左边的日期是本月的日期,则使用 Vlookup 函数查找对应日期的对应休班状态,否则显示为空 。
文章插图
文章插图
E8 单元格函数公式:
=IF(MONTH(E7)=$F$4,IFERROR(VLOOKUP(E7,参数表!$A:$D,3,0),""),"")
推荐阅读
- excel表格求和显示公式不显示数字 excel表格求和
- 有仙缘的人出生日期 命运好不好呢
- 网上报名当兵截止日期 08专升本网上报名截止日期
- 怎么做excel表格教程,新手入门excel表格制作
- PPT中怎么使音频自动播放,如何在PPT中插入音乐并且能自动播放?
- Excel解除合并如何保留原数据 合并多行保留所有内容?
- 怎么在excel中统计个数 如何用excel统计个数?
- excel如何调整小数位数 excel怎么调整小数位数?
- EXCEL如何删除重复值 excel如何删掉重复值?
- 双方出生日期看姻缘婚配结果