VBA For ExcelExcel 加油站我的 一 延展性

不可思议!用excel居然可以制作万年历

2017-07-16  本文已影响30人  幸福的耗子

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

Step1:好万年历大概布局:

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

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

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)))

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

在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

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

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

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

上一篇下一篇

猜你喜欢

热点阅读