excel函数制作日历备忘录(使用Excel数组公式自制日历)
excel函数制作日历备忘录(使用Excel数组公式自制日历)这个公式引用的是单元格B2的内容,只要改变B2中的年月日,就会自动生成这个月的日历。选中7*6这42个单元格,填入公式,按下Ctrl Shift Enter三个键,生成日历。这个日历可以查看从1900年1月1日开始的每个月的日历。做这个日历的第一步是要先做一个公历日历来做辅助表这是一个7*6的矩阵,只需要一个数组公式填充即可{=IF(MONTH(DATE(YEAR(B2) MONTH(B2) 1))MONTH(DATE(YEAR(B2) MONTH(B2) 1)-(WEEKDAY(DATE(YEAR(B2) MONTH(B2) 1))-1) {0;1;2;3;4;5}*7 {1 2 3 4 5 6 7}-1) DATE(YEAR(B2) MONTH(B2) 1)-(WEEKDAY(DATE(YEAR(B2) MONTH(B2) 1))-1) {0;1;2;3;4;5}*7 {1 2 3
日历制作
自己动手用EXCEL制作日历
网上有现成的日历模板,一般是整年的,带农历、节气、节日
我们今天做一个简易的日历,填写年份、月份,就生成带有农历和星期的单月日历
这个日历可以查看从1900年1月1日开始的每个月的日历。
做这个日历的第一步是要先做一个公历日历来做辅助表
这是一个7*6的矩阵,只需要一个数组公式填充即可
{=IF(MONTH(DATE(YEAR(B2) MONTH(B2) 1))MONTH(DATE(YEAR(B2) MONTH(B2) 1)-(WEEKDAY(DATE(YEAR(B2) MONTH(B2) 1))-1) {0;1;2;3;4;5}*7 {1 2 3 4 5 6 7}-1) DATE(YEAR(B2) MONTH(B2) 1)-(WEEKDAY(DATE(YEAR(B2) MONTH(B2) 1))-1) {0;1;2;3;4;5}*7 {1 2 3 4 5 6 7}-1)}
选中7*6这42个单元格,填入公式,按下Ctrl Shift Enter三个键,生成日历。
这个公式引用的是单元格B2的内容,只要改变B2中的年月日,就会自动生成这个月的日历。
带有农历的日历,需要84个单元格:
1、3、5、7、9、11行用来显示公历,直接引用辅助表里的公历日历;
2、4、6、8、10、12行用来显示农历,用公历值计算农历,公式:=IFERROR(TEXT(E5 IF(--TEXT(E5 [$-130000]d)=10 初十 IF(--TEXT(E5 [$-130000]d)10 [$-130000][DBNum1]d 初[$-130000][DBNum1]d))) )。
其实这个函数就是设置显示格式的函数,从excel2007开始,就已经支持农历转换,就是用[$-130000]d来转换,其他的IF语句都是为了修饰“初一”到“初十”,和“十一”到“三十”的。
农历年是用这个公式:=MID(甲乙丙丁戊己庚辛壬癸 MOD(TEXT(B3 [$-130000]e)-4 10) 1 1)MID(子丑寅卯辰巳午未申酉戌亥 MOD(TEXT(B3 [$-130000]e)-4 12) 1 1)年
农历月用这个公式:=TEXT(B3 [$-130000][DBNum1]m月)
这里引用的B3单元格的内容不显示:=B2-C2
单元格B2是要显示的年份
单元格C2是要显示的月份
只要修改这两个单元格的内容,就会自动生成含有农历的日历了。