excel动态万年历(用excel居然可以制作万年历)(1)

大家都在网上搜索万年历查询某一天的日期对应的星期几,以及放假时间,我用excel做了一个简单的万年历,其实这个万年历实用性价值不是很大,我主要通过动手复习一下自己以前学过的excel公式才做的,我分享给大家我做的思路吧~!做的不好请见谅

excel动态万年历(用excel居然可以制作万年历)(2)

Step2:创建查询条件:在j列,K列年月列表,然后在C1和E1通过数据验证建立下拉选项。

excel动态万年历(用excel居然可以制作万年历)(3)

excel动态万年历(用excel居然可以制作万年历)(4)

excel动态万年历(用excel居然可以制作万年历)(5)

excel动态万年历(用excel居然可以制作万年历)(6)

Step3:在C14显示今天日期:输入公式=TODAY();F14显示今天星期几:=IF(WEEKDAY(C14,2)=7,"日",WEEKDAY(C14,2));H14显示当前时间:=NOW()

excel动态万年历(用excel居然可以制作万年历)(7)

Step4:下面就进入我们核心创建环节:创建日历面板

首先判断当前月份是总共多少天,所以我们在A3区域里面输入公式:=IF(OR(E1=1,E1=3,E1=5,E1=7,E1=8,E1=10,E1=12),31,IF(OR(E1=4,E1=6,E1=9,E1=11),30,IF(MOD(C1,4)=0,29,28)))

excel动态万年历(用excel居然可以制作万年历)(8)

我们判断选择年份月份的第一天是星期几,在第3行中创建一列;需要在B3输公式为=IF(WEEKDAY(DATE($C$1,$E$1,1),2)=B4,1,0),并拖动到H3

excel动态万年历(用excel居然可以制作万年历)(9)

在B7中输入公式判断第一天是否是星期日:=IF(B3=1,1,0)

在B8中输入公式让上一行的下一日换行显示:=H7 1回车,并填充到B10

在B11输入公式判断是否已经超过当前月份的天数,如果超出显示0= =IF(H10>=A3,0,H10 1)

在B12输入公式判断是否已经超过当前月份的天数,如果超出显示0=IF(H11>=A3,0,IF(H11>0,H11 1,0))

在C7输入公式显示当前日期=IF(B7>0,B7 1,IF(C3=1,1,0)),并填充到H7

在C8输入公式显示当前日期=B8 1 并填充到H10

在C11输入公式显示当前日期,如果超出显示0:=IF(B11>=$A$3,0,IF(B11>0,B11 1,IF(C7=1,1,0))) 并填充到C12以及到H11

excel动态万年历(用excel居然可以制作万年历)(10)

Step5:我们在excel设置中把0的部分不显示

excel动态万年历(用excel居然可以制作万年历)(11)

Step6:最后自己在隐藏不需要显示的列或者行,再进行修饰一下文字以及单元格边框就完成了所有操作。

我再想想如何把公历转换成农历,以及显示一些节日等信息,如果希望大家能提供一些思路给我哈,麻烦大家可以在评论中写一下哈。

,