用EXCEL制作新年万年历

用EXCEL制作新年万年历
用EXCEL制作新年万年历

用EXCEL制作新年万年历

新年伊始,制作一个新年万年历送给别人新年的祝福,这份心意是非常重要的。制作新年万年历有很多办法,但用Office的Excel表格制作你又试过没?下面给大家介绍用Excel 制作万年历。

今天我们介绍用Excel制作万年历的方法。这个新年万年历可以显示当月的月历,还可以随意查阅任何日期所属的月历,非常方便。如果你愿意,还可以让它在特殊的日子里显示不同的提醒文字,一起来试试吧!

本文所涉及到的函数有:

1、AND (logical1,logical2, ...)

2、DATE (year,month,day)

3、DAY (serial_number)

4、IF (Logical,Value_if_true,Value_if_false)

5、INT (number)

6、MONTH (serial_number)

7、NOW ()

8、OR (logical1,logical2, ...)

1、启动EXCEL2003,新建一个工作表,取名保存(如万年历.xls),并在相应的单元格中,输入如图1所示的文本。

2、同时选中B1、C1、D1单元格,按“格式”工具栏上的“合并及居中”按钮,将其合并成一个单元格,并输入公式:=TODAY()。

选中B1(合并后的)单元格,执行“格式→单元格”命令,打开“单元格格式”对话框(如图2),在“数字”标签中的“分类”下面选中“日期”选项,再在右侧“类型”下面选中“二○○一年三月十四日”选项,“确定”退出,将日期设置成中文形式。

注意:TODAY()函数用于提取当前系统日期,请将系统日期一定要调整准确哟。

3、选中F1单元格,输入公式:=IF(WEEKDAY(B1,2)=7,"日",WEEKDAY(B1,2));选中H1单元格,输入公式:=NOW()。

选中F1单元格,打开“单元格格式”对话框,在“数字”标签中的“分类”下面选中“特殊”选项,再在右侧“类型”下面选中“中文小写数字”选项,“确定”退出,将“星期数”设置成中文小写形式;选中H1单元格,打开“单元格格式”对话框,在“数字”标签中的“分类”下面选中“时间”选项,再在右侧“类型”下面选中一款时间格式,“确定”退出。

注意:①上述前面一个公式的含义是:如果(IF)当前日期(B1)是星期“7”(WEEKDAY(B1,2)=7),则在F1单元格中显示“日”,否则,直接显示出星期的数值(WEEKDAY(B1,2))。

②上述第二个函数(NOW())用于提取当前系统日期和时间,也请将系统日期和时间调整准确。

4、在I1、I2单元格分别输入1900、1901,然后同时选中I1、I2单元格,用“填充柄”向下拖拉至I151单元格,输入1900—2050年份序列。

同样的方法,在J1至J12单元格中输入1—12月份序列。

5、选中D13单元格,执行“数据→有效性”命令,打开“数据有效性”对话框(如图3),按“允许”右侧的下拉按钮,选中“序列”选项,在“来源”下面的方框输入:=$I$1:$I$151,“确定”退出。

同样的操作,将F15单元格数据有效性设置为“=$J$1:$J$12”序列。

注意:经过这样的设置以后,当我们选中D15(或F15)单元格时,在单元格右侧出现一个下拉按钮,按此下拉按钮,即可选择年份(或月份)数值,快速输入需要查询的年、月值。

6、选中A2单元格(不一定非得是A2哟),输入公式:

=IF(F13=2,IF(OR(D13/400=INT(D13/400),AND(D13/4=INT(D13/4),D13/100 <> INT(D13/100))),29,28),IF(OR(F13=4,F13=6,F13=9,F13=11),30,31)),用于获取查询“月份”所对应的天数(28、29、30、31)。

注意:上述函数的含义是:如果查询“月份”为“2月”(F13=2)时,并且“年份”数能被400整除[D13/400=INT(D13/400)],或者(OR)“年份”能被4整除,但不能被100整除[AND(D13/4=INT(D13/4),D13/100 <> INT(D13/100))],则该月为29天(也就是我们通常所说的“闰年”),否则为28天。如果“月份”不是2月,但是“4、6、9、11”月,则该月为30天。其他月份天数为31天。

7、选中B2单元格,输入公式:=IF(WEEKDAY(DATE($D$13,$F$13,1),2)=B3,1,0)。再次选中B2单元格,用“填充柄”将上述公式复制到C2—H2单元格中。

注意:①上述B2公式的含义是:如果“查询年月”的第1天是星期“7”(WEEKDAY(DATE)($D$13,$F$13,1),2)=B3)时,在该单元格显示“1”,反之显示“0”),为“查询年月”获取一个对照值,为下面制作月历做准备。

②上述C2—H2单元条中公式的含义与B2相似。

③在用拖拉法复制公式时,公式“绝对引用”的单元格(加了“$”号的,如“$D$13”等)不会发生改变,而“相对引用”的单元格(没有加“$”号的,如“B3”等),则会智能化地发生变化,例如在E2单元格中,“B3”变成了“E3”,整个公式成为:=IF(WEEKDAY(DATE($D$13,$F$13,1),2)=E3,1,0)。

8、选中B6单元格,输入公式:=IF(B2=1,1,0)。选中B7单元格,输入公式:=H6+1。用“填充柄”将B7单元格中的公式复制到B8、B9单元格中。

分别选中B10、B11单元格,输入公式:=IF(H9>=A2,0,H9+1)和=IF(H10> =A2,0,IF(H10> 0,H10+1,0))。

选中C6单元格,输入公式:=IF(B6> 0,B6+1,IF(C2=1,1,0))。用“填充柄”将C6单元格中的公式复制到D6—H6单元格中。

选中C7单元格,输入公式:=B7+1。用“填充柄”将C7单元格中的公式复制到C8、C9单元格中。同时选中C7—C9单元格,用“填充柄”将其中的公式复制到D7—H9单元格中。

选中C10单元格,输入公式:=IF(B10>=$A$2,0,IF(B10> 0,B10+1,IF(C6=1,1,0)))。用“填充柄”将C10单元格中的公式复制到D10—H10单元格和C11单元格中。

至此,整个万年历(其实没有万年,只有从1900—2050的151年)制作完成。

下面,我们一起来将其装饰一下。

9、选中相应的单元格,利用工具栏上的相应按钮,设置好字体、字号、字符颜色等。

选中相应的单元格,打开“单元格格式”对话框,在“对齐”标签下,设置好单元格中文本

的对齐方式(通常情况下,垂直对齐可以一次性设置为“居中”,水平“对齐”根据具体情况设置)。

同时选中I列和J列,右击鼠标,选“隐藏”选项,将相应的列隐藏起来,使得界面更加友好。用同样的方法,将第2和第3行也隐藏起来。

10、选中B5—H11单元格区域,打开“单元格格式”对话框,进入“边框”标签,选择好“颜色、样式”,并“预置”好边框范围,然后“确定”退出,为月历加上边框。

11、执行“工具→选项”命令,打开“选项”对话框(如图4),在“视图”标签下(通常是默认标签),清除“零值”和“网格线”复选框中的“∨”号,“确定”退出,让“零值”和“网格线”不显示出来。

12、将B14—H14和B15—H15单元格分别合并成一个单元格,并在B14和B15单元格中输入公式:=IF(AND(MONTH(D1)=1,DAY(D1)=1),"新年新气象!加油呀!",IF(AND(MONTH(D1)=3,DAY(D1)=8),"元旦快乐!",IF(AND(MONTH(D1)=5,DAY(D1)=1),"劳动最光荣",IF(AND(MONTH(D1)=5,DAY(D1)=4),"青年是祖国的栋梁",IF(AND(MONTH(D1)=6,DAY(D1)=1),"原天下所有的儿童永远快乐",0)))))和=IF(AND(MONTH(D1)=7,DAY(D1)=1),"党的恩情永不忘",IF(AND(MONTH(D1)=8,DAY(D1)=1),"提高警惕,保卫祖国!",IF(AND(MONTH(D1)=9,DAY(D1)=10),"老师,您辛苦了!",IF(AND(MONTH(D1)=10,DAY(D1)=1),"祝我们伟大的祖国繁荣富强",0))))。

设置好B14和B15单元格的字体、字号、字符颜色。

注意:上述公式的含义是:如果当前日期逢到相关的节日(如“元旦”等),则在B14或B15单元格显示出相应的祝福语言(如“新的新气象!加油呀!”,参见图5)。

由于IF函数只能嵌套7层,而节日数量超过7个(我们这里给出了9个),因此,我们用两个单元格来显示。13、执行“格式→工作表→背景”命令,打开“工作表背景”对话框(如图6),选择一张合适的图片后,按“插入”按钮,将其衬于工作表文字下面。

14、在按住“Ctrl”键的同时,单击D13和F13单元格,同时选中两个单元格,开“单元格格式”对话框,切换“保护”标签(如图7),清除“锁定”前面复选框中的“∨”号,“确定”退出。

15、执行“工具→保护→保护工作表”命令,打开“保护工作表”对话框(如图8),两次输入密码后,确定退出。

注意:经过这样的设置后,整个工作表中除了D13和F13单元格中的内容可以改变外,其它单元格中的内容均不能改变,保证了万年历的使用可靠性。

用EXCEL制作年历

[文章导读] 这个万年历可以显示当月的月历,还可以随意查阅任何日期所属的月历,非常方便…… 今天我们介绍用Excel制作万年历的方法。这个万年历可以显示当月的月历,还可以随意查阅任何日期所属的月历,非常方便。如果你愿意,还可以让它在特殊的日子里显示不同的提醒文字,一起来试试吧! 本文所涉及到的函数有: 1、AND (logical1,logical2, ...) 2、DATE (year,month,day) 3、DAY (serial_number) 4、IF (Logical,Value_if_true,Value_if_false) 5、INT (number) 6、MONTH (serial_number) 7、NOW () 8、OR (logical1,logical2, ...) 1、启动EXCEL2003,新建一个工作表,取名保存(如万年历.xls),并在相应的单元格中,输入如图1所示的文本。

2、同时选中B1、C1、D1单元格,按“格式”工具栏上的“合并及居中”按钮,将其合并成一个单元格,并输入公式:=TODAY()。 选中B1(合并后的)单元格,执行“格式→单元格”命令,打开“单元格格式”对话框(如图2),在“数字”标签中的“分类”下面选中“日期”选项,再在右侧“类型”下面选中“二○○一年三月十四日”选项,“确定”退出,将日期设置成中文形式。

注意:TODAY()函数用于提取当前系统日期,请将系统日期一定要调整准确哟。 3、选中F1单元格,输入公式:=IF(WEEKDAY(B1,2)=7,"日",WEEKDAY(B1,2));选中H1单元格,输入公式:=NOW()。 选中F1单元格,打开“单元格格式”对话框,在“数字”标签中的“分类”下面选中“特殊”选项,再在右侧“类型”下面选中“中文小写数字”选项,“确定”退出,将“星期数”设置成中文小写形式;选中H1单元格,打开“单元格格式”对话框,在“数字”标签中的“分类”下面选中“时间”选项,再在右侧“类型”下面选中一款时间格式,“确定”退出。 注意:①上述前面一个公式的含义是:如果(IF)当前日期(B1)是星期“7”(WEEKDAY(B1,2)=7),则在F1单元格中显示“日”,否则,直接显示出星期的数值(WEEKDAY(B1,2))。 ②上述第二个函数(NOW())用于提取当前系统日期和时间,也请将系统日期和时间调整准确。 4、在I1、I2单元格分别输入1900、1901,然后同时选中I1、I2单元格,用“填充柄”向下拖拉至I151单元格,输入1900—2050年份序列。 同样的方法,在J1至J12单元格中输入1—12月份序列。 5、选中D13单元格,执行“数据→有效性”命令,打开“数据有效性”对话框(如图3),按“允许”右侧的下拉按钮,选中“序列”选项,在“来源”下面的方框输入: =$I$1:$I$151,“确定”退出。

用EXCEL制作新年万年历

用EXCEL制作新年万年历 新年伊始,制作一个新年万年历送给别人新年的祝福,这份心意是非常重要的。制作新年万年历有很多办法,但用Office的Excel表格制作你又试过没?下面给大家介绍用Excel 制作万年历。 今天我们介绍用Excel制作万年历的方法。这个新年万年历可以显示当月的月历,还可以随意查阅任何日期所属的月历,非常方便。如果你愿意,还可以让它在特殊的日子里显示不同的提醒文字,一起来试试吧! 本文所涉及到的函数有: 1、AND (logical1,logical2, ...) 2、DATE (year,month,day) 3、DAY (serial_number) 4、IF (Logical,Value_if_true,Value_if_false) 5、INT (number) 6、MONTH (serial_number) 7、NOW () 8、OR (logical1,logical2, ...) 1、启动EXCEL2003,新建一个工作表,取名保存(如万年历.xls),并在相应的单元格中,输入如图1所示的文本。

2、同时选中B1、C1、D1单元格,按“格式”工具栏上的“合并及居中”按钮,将其合并成一个单元格,并输入公式:=TODAY()。 选中B1(合并后的)单元格,执行“格式→单元格”命令,打开“单元格格式”对话框(如图2),在“数字”标签中的“分类”下面选中“日期”选项,再在右侧“类型”下面选中“二○○一年三月十四日”选项,“确定”退出,将日期设置成中文形式。 注意:TODAY()函数用于提取当前系统日期,请将系统日期一定要调整准确哟。 3、选中F1单元格,输入公式:=IF(WEEKDAY(B1,2)=7,"日",WEEKDAY(B1,2));选中H1单元格,输入公式:=NOW()。

用Excel怎样制作万年历

可以把Excel表格内容设置为桌面背景么? 悬赏分:10 - 解决时间:2007-2-15 08:32 由于经常要查一个Excel表,就想如果把它设置为桌面背景就会很方便了,求教高手,怎么做才能办到? 提问者:firtre - 三级 最佳答案 文件-另存为网页-在桌面上点右键-属性-桌面-自定义桌面-web-钩上就搞定了 用Excel怎样制作万年历 Excel 2010-02-07 15:18:53 阅读578 评论29 字号:大中小 准备工作,制作如下电子表格:

第一步:在C2中输入=TODAY()回车。TODAY()函数用于提取当前系统日期。 第二步:在F2中输入=IF(WEEKDAY(C2,2)=7,"日",WEEKDAY(C2,2)) 回车。 第三步:在H2中输入 =NOW() 回车。NOW()用于提取当前系统时间。 第四步:在D14中设置下拉菜单,数值为1900—2029。参见“怎样制作下拉菜单”

第五步:在F14中设置下拉菜单,数值为1—12。

将查询日期调为当前日期,如下图:

第六步:在A3中输入: =IF(F14=2,IF(OR(D14/400=INT(D14/400),AND(D14/4=INT(D14/4),D14/100<>INT(D14/100))),29, 28),IF(OR(F14=4,F14=6,F14=9,F14=11),30,31))回车。 第七步:B3中输入=IF(WEEKDAY(DATE($D$14,$F$14,1),2)=B4,1,0)回车。选中B3向右复制公式 至H3。 第八步:B6中输入=IF(B3=1,1,0)回车。 第九步:在B7中输入=H6+1回车,选中B7,向下复制公式至B9。 第十步:在B10中输入=IF(H9>=A3,0,H9+1)回车。 第十一步:在B11中输入=IF(H10>=A3,0,IF(H10>0,H10+1,0))回车。 第十二步:在C6中输入=IF(B6>0,B6+1,IF(C3=1,1,0))回车。 第十三步:在C7中输入=B7+1回车。 第十四步:选中C7向下复制公式至C9。 第十五步:在C10中输入=IF(B10>=$A$3,0,IF(B10>0,B10+1,IF(C6=1,1,0)))回车。 第十六步:选中C6,向右复制公式至H6。 选中C7,向右复制公式至H7。 选中C8,向右复制公式至H8。

用EXCEL制作新年万年历

用EXCEL制作新年万年历(修正版) 新年伊始,制作一个新年万年历送给别人新年的祝福,这份心意是非常重要的。制作新年万年历有很多办法,但用Office的Excel表格制作你又试过没?下面给大家介绍用Excel制作万年历。 今天我们介绍用Excel制作万年历的方法。这个新年万年历可以显示当月的月历,还可以随意查阅任何日期所属的月历,非常方便。如果你愿意,还可以让它在特殊的日子里显示不同的提醒文字,一起来试试吧! 本文所涉及到的函数有: 1、AND (logical1,logical2, ...) 2、DA TE (year,month,day) 3、DAY (serial_number) 4、IF (Logical,Value_if_true,Value_if_false) 5、INT (number) 6、MONTH (serial_number) 7、NOW () 8、OR (logical1,logical2, ...) 1、启动EXCEL2003,新建一个工作表,取名保存(如万年历.xls),并在相应的单元格中,输入如图1所示的文本。 2、同时选中B1、C1、D1单元格,按“格式”工具栏上的“合并及居中”按钮,将其合并成一个单元格,并输入公式:=TODAY()。 选中B1(合并后的)单元格,执行“格式→单元格”命令,打开“单元格格式”对话框(如图2),在“数字”标签中的“分类”下面选中“日期”选项,再在右侧“类型”下面选中“二○○一年三月十四日”选项,“确定”退出,将日期设置成中文形式。

注意:TODAY()函数用于提取当前系统日期,请将系统日期一定要调整准确哟。 3、选中F1单元格,输入公式:=IF(WEEKDAY(B1,2)=7,"日",WEEKDAY(B1,2));选中H1单元格,输入公式:=NOW()。 选中F1单元格,打开“单元格格式”对话框,在“数字”标签中的“分类”下面选中“特殊”选项,再在右侧“类型”下面选中“中文小写数字”选项,“确定”退出,将“星期数”设置成中文小写形式;选中H1单元格,打开“单元格格式”对话框,在“数字”标签中的“分类”下面选中“时间”选项,再在右侧“类型”下面选中一款时间格式,“确定”退出。 注意:①上述前面一个公式的含义是:如果(IF)当前日期(B1)是星期“7”(WEEKDAY(B1,2)=7),则在F1单元格中显示“日”,否则,直接显示出星期的数值(WEEKDAY(B1,2))。 ②上述第二个函数(NOW())用于提取当前系统日期和时间,也请将系统日期和时间调整准确。 4、在I1、I2单元格分别输入1900、1901,然后同时选中I1、I2单元格,用“填充柄”向下拖拉至I151单元格,输入1900—2050年份序列。 同样的方法,在J1至J12单元格中输入1—12月份序列。 5、选中D13单元格,执行“数据→有效性”命令,打开“数据有效性”对话框(如图3),按“允许”右侧的下拉按钮,选中“序列”选项,在“来源”下面的方框输入:=$I$1:$I$151,“确定”退出。 同样的操作,将F15单元格数据有效性设置为“=$J$1:$J$12”序列。 注意:经过这样的设置以后,当我们选中D15(或F15)单元格时,在单元格右侧出现一个下拉按钮,按此下拉按钮,即可选择年份(或月份)数值,快速输入需要查询的年、月值。 6、选中A2单元格(不一定非得是A2哟),输入公式:=IF(F13=2,IF(OR(D13/400=INT(D13/400),AND(D13/4=INT(D13/4),D13/100=INT(D13/100))),29,28),IF(OR(F13=4,F13=6,F13=9,F13=11),30,31)),用于获取查询“月份”所对应的天数(28、29、30、31)。 注意:上述函数的含义是:如果查询“月份”为“2月”(F13=2)时,并且“年份”数能被400整除[D13/400=INT(D13/400)],或者(OR)“年份”能被4整除,但不能被100整除[AND(D13/4=INT(D13/4),D13/100 INT(D13/100))],则该月为29天(也就是我们通常所说的“闰年”),否则为28天。如果“月份”不是2月,但是“4、6、9、11”月,则该月为30天。其他月份天数为31天。 7、选中B2单元格,输入公式:=IF(WEEKDAY(DATE($D$13,$F$13,1),2)=B3,1,0)。再次选中B2单元格,用“填充柄”将上述公式复制到C2—H2单元格中。 注意:①上述B2公式的含义是:如果“查询年月”的第1天是星期“7”(WEEKDAY(DATE)($D$13,$F$13,1),2)=B3)时,在该单元格显示“1”,反之显示“0”),为“查询年月”获取一个对

EXCEL制作日历和奖金表

用EXCEL制作一份万年历 今天我们介绍用Excel制作万年历的方法。这个万年历可以显示当月的月历,还可以随意查阅任何日期所属的月历,非常方便。如果你愿意,还可以让它在特殊的日子里显示不同的提醒文字,一起来试试吧! 本文所涉及到的函数有: 1、AND (logical1,logical2, ...) 2、DATE (year,month,day) 3、DAY (serial_number) 4、IF (Logical,Value_if_true,Value_if_false) 5、INT (number) 6、MONTH (serial_number) 7、NOW () 8、OR (logical1,logical2, ...) 1、启动EXCEL2003,新建一个工作表,取名保存(如万年历.xls),并在相应的单元格中,输入如图1所示的文本。

2、同时选中B1、C1、D1单元格,按“格式”工具栏上的“合并及居中”按钮,将其合并成一个单元格,并输入公式:=TODAY()。 选中B1(合并后的)单元格,执行“格式→单元格”命令,打开“单元格格式” 对话框(如图2),在“数字”标签中的“分类”下面选中“日期”选项,再在右侧“类型”下面选中“二○○一年三月十四日”选项,“确定”退出,将日期设置成中文形式。 注意:TODAY()函数用于提取当前系统日期,请将系统日期一定要调整准确哟。 3、选中F1单元格,输入公式:=IF(WEEKDAY(B1,2)=7,"日 ",WEEKDAY(B1,2));选中H1单元格,输入公式:=NOW()。 选中F1单元格,打开“单元格格式”对话框,在“数字”标签中的“分类”下面选中“特殊”选项,再在右侧“类型”下面选中“中文小写数字”选项,“确定”退出,将“星期数”设置成中文小写形式;选中H1单元格,打开“单元格格式”对话框,在“数字”标签中的“分类”下面选中“时间”选项,再在右侧“类型”下面选中一款时间格式,“确定”退出。 注意:①上述前面一个公式的含义是:如果(IF)当前日期(B1)是星期“7”(WEEKDAY(B1,2)=7),则在F1单元格中显示“日”,否则,直接显示出星期的数值(WEEKDAY(B1,2))。 ②上述第二个函数(NOW())用于提取当前系统日期和时间,也请将系统日期和时间调整准确。

excel表格制作日历

excel表格制作日历 2、同时选中B1、C1、D1单元格,按“格式工具栏上的“合并及居中按钮,将其合并成一个单元格,并输入公式:=TODAY()。 选中B1(合并后的)单元格,执行“格式→单元格命令,打开“单元格格式对话框,在“数字标签中的“分类下面选中“日期选项,再在右侧“类型下面选中“二○○一年三月十四日选项,“确定退出,将日期设置成中文形式。 注意:TODAY()函数用于提取当前系统日期,请将系统日期一定要调整准确哟。 3、选中F1单元格,输入公式:=IF(WEEKDAY(B1,2)=7,"日",WEEKDAY(B1,2));选中H1单元格,输入公式:=NOW()。 选中F1单元格,打开“单元格格式对话框,在“数字标签中的“分类下面选中“特殊选项,再在右侧“类型下面选中“中文小写数字选项,“确定退出,将“星期数设置成中文小写形式;选中H1单元格,打开“单元格格式对话框,在“数字标签中的“分类下面选中“时间选项,再在右侧“类型下面选中一款时间格式,“确定退出。 注意:①上述前面一个公式的含义是:如果(IF)当前日期(B1)是星期“7(WEEKDAY(B1,2)=7),则在F1单元格中显示“日,否则,直接显示出星期的数值(WEEKDAY(B1,2))。 ②上述第二个函数(NOW())用于提取当前系统日期和时间,也请将系统日期和时间调整准确。

4、在I1、I2单元格分别输入1900、1901,然后同时选中I1、I2单元格,用“填充柄向下拖拉至I151单元格,输入1900—2050年份序列。 同样的方法,在J1至J12单元格中输入1—12月份序列。 5、选中D13单元格,执行“数据→有效性命令,打开“数据有效性对话框(如图3),按“允许右侧的下拉按钮,选中“序列选项,在“来源下面的方框输入:=$I$1:$I$151,“确定退出。 同样的操作,将F15单元格数据有效性设置为“=$J$1:$J$12序列。 注意:经过这样的设置以后,当我们选中D15(或F15)单元格时,在单元格右侧出现一个下拉按钮,按此下拉按钮,即可选择年份(或月份)数值,快速输入需要查询的年、月值。 6、选中A2单元格(不一定非得是A2哟),输入公式:=IF(F13=2,IF(OR(D13/400=INT(D13/400),AND(D13/4=INT(D13/4),D13/100I NT(D13/100))),29,28),IF(OR(F13=4,F13=6,F13=9,F13=11),30,31)),用于获取查询“月份所对应的天数(28、29、30、31)。 注意:上述函数的含义是:如果查询“月份为“2月(F13=2)时,并且“年份数能被400整除[D13/400=INT(D13/400)],或者(OR)“年份能被4整除,但不能被100整除[AND(D13/4=INT(D13/4),D13/100INT(D13/100))],则该月为29天(也就是我们通常所说的“闰年),否则为28天。 如果“月份不是2月,但是“4、6、9、11月,则该月为30天。 其他月份天数为31天。

如何用EXCEL表格制作日历

今天我们介绍用Excel制作万年历的方法。这个万年历可以显示当月的月历,还可以随意查阅任何日期所属的月历,非常方便。如果你愿意,还可以让它在特殊的日子里显示不同的提醒文字,一起来试试吧! 本文所涉及到的函数有: 1、AND (logical1,logical2, ...) 2、DATE (year,month,day) 3、DAY (serial_number) 4、IF (Logical,Value_if_true,Value_if_false) 5、INT (number) 6、MONTH (serial_number) 7、NOW () 8、OR (logical1,logical2, ...) 1、启动EXCEL2003,新建一个工作表,取名保存(如万年历.xls),并在相应的单元格中,输入如图1所示的文本。

2、同时选中B1、C1、D1单元格,按“格式”工具栏上的“合并及居中”按钮,将其合并成一个单元格,并输入公式:=TODAY()。 选中B1(合并后的)单元格,执行“格式→单元格”命令,打开“单元格格式”对话框(如图2),在“数字”标签中的“分类”下面选中“日期”选项,再在右侧“类型”下面选中“二○○一年三月十四日”选项,“确定”退出,将日期设置成中文形式。 注意:TODAY()函数用于提取当前系统日期,请将系统日期一定要调整准确哟。

3、选中F1单元格,输入公式:=IF(WEEKDAY(B1,2)=7,"日",WEEKDAY(B1,2));选中H1单元格,输入公式:=NOW()。 选中F1单元格,打开“单元格格式”对话框,在“数字”标签中的“分类”下面选中“特殊”选项,再在右侧“类型”下面选中“中文小写数字”选项,“确定”退出,将“星期数”设置成中文小写形式;选中H1单元格,打开“单元格格式”对话框,在“数字”标签中的“分类”下面选中“时间”选项,再在右侧“类型”下面选中一款时间格式,“确定”退出。 注意:①上述前面一个公式的含义是:如果(IF)当前日期(B1)是星期“7”(WEEKDAY(B1,2)=7),则在F1单元格中显示“日”,否则,直接显示出星期的数值(WEEKDAY(B1,2))。 ②上述第二个函数(NOW())用于提取当前系统日期和时间,也请将系统日期和时间调整准确。 4、在I1、I2单元格分别输入1900、1901,然后同时选中I1、I2单元格,用“填充柄”向下拖拉至I151单元格,输入1900—2050年份序列。 同样的方法,在J1至J12单元格中输入1—12月份序列。 5、选中D13单元格,执行“数据→有效性”命令,打开“数据有效性”对话框(如图3),按“允许”右侧的下拉按钮,选中“序列”选项,在“来源”下面的方框输入:=$I$1:$I$151,“确定”退出。

Excel 2003制作万年历的步骤

Excel 2003制作万年历的步骤 1、启动EXCEL2003,新建一个工作表,取名保存(如万年历.xls),并在相应的单元格中,输入如图1所示的文本。 2、同时选中B1、C1、D1单元格,按“格式”工具栏上的“合并及居中”按钮,将其合并成一个单元格,并输入公式:=TODA Y()。 选中B1(合并后的)单元格,执行“格式→单元格”命令,打开“单元格格式”对话框(如图2),在“数字”标签中的“分类”下面选中“日期”选项,再在右侧“类型”下面选中“二○○一年三月十四日”选项,“确定”退出,将日期设置成中文形式。

注意:TODAY()函数用于提取当前系统日期,请一定要将系统日期调整准确哟。 3、在F1单元格中输入公式:=IF(WEEKDAY(B1,2)=7,"日",WEEKDAY(B1,2));在H1单元格中输入公式:=NOW()。 选中F1单元格,打开“单元格格式”对话框,在“数字”标签中的“分类”下面选中“特殊”选项,再在右侧“类型”下面选中“中文小写数字”选项,“确定”退出,将“星期数”设置成中文小写形式;选中H1单元格,打开“单元格格式”对话框,在“数字”标签中的“分类”下面选中“时间”选项,再在右侧“类型”下面选中一款时间格式,“确定”退出。 注意:①上述前面一个公式的含义是:如果(IF)当前日期(B1)是星期“7”(WEEKDAY(B1,2)=7),则在F1单元格中显示“日”,否则,直接显示出星期的数值(WEEKDAY(B1,2))。 ②上述第二个函数(NOW())用于提取当前系统日期和时间,也请将系统日期和时间调整准确。 4、在I1、I2单元格分别输入1900、1901,然后同时选中I1、I2单元格,用“填充柄”向下拖拉至I151单元格,输入1900—2050年份序列。 同样的方法,在J1至J12单元格中输入1—12月份序列。 5、选中D13单元格,执行“数据→有效性”命令,打开“数据有效性”对话框(如图3),按“允许”右侧的下拉按钮,选中“序列”选项,在“来源”下面的方框输入:=$I$1:$I$151,“确定”退出。 同样的操作,将F13单元格数据有效性设置为“=$J$1:$J$12”序列。 注意:经过这样的设置以后,当我们选中D13(或F13)单元格时,在单元格右侧出现一个下拉按钮,按此下拉按钮,即可选择年份(或月份)数值,快速输入需要查询的年、月值。 6、选中A2单元格(不一定非得是A2哟),输入公式:=IF(F13=2,IF(OR(D13/400=INT(D13/400),AND(D13/4=INT(D13/4),D13/100<>INT(D13/100))),29,28),IF(O

Excel制作万年历方法(一看就会)

按CTRL,点击我 我们将一步一步教您怎么制作EXCEL万年历! Office 2007是微软Office产品史上最具创新与革命性的一个版本。全新设计的用户界面、稳定安全的文件格式、无缝高效的沟通协作。 Excel是Office套件中的一个重要组件之一。直观的界面、出色的计算功能和图表工具,再加上成功的市场营销,使Excel成为最流行的微机数据处理软件。 日历分为阴历和阳历。阳历的历年为一个回归年,现时国际通用的公历(格里高历)即为太阳历的一种,亦简称为阳历;阴历亦称月亮历,或称太阴历,其历月是一个朔望月,历年为1 2个朔望月,其大月30天,小月29 天;中国的农历就是阴阳历的一种。 如何在Excel实现万年历是对Office能力的综合运用,又是分析问题并进行求解的一系列过程。 2. 分析 2.1 整体构思 在进行整体构思之前,不妨我们先看看多数日历是怎样的情形,其中: 1、上面居中为当前年份。 2、然后为当年的12个月份,至于每行为3个月还是4个月取决于可见界面的大小和美观。 3、总所周知,一周则为7天,每个月最大31天,最小28天;如果1号为周六或周日的话,则该月可能要跨越6周;因此每个月最大的跨越为六周,事实上我们找一下其它日历的模板,就会发现一般都是六周。所以我们可以把每个月视为一个7 *6的单元格集合。

我们将一步一步教您怎么制作EXCEL万年历! 2.2 算法问题 当我们确定了每个月事实上为7*6的单元格集合后,我们接下来要做以下几件事情: 1、如何定位和填充相应的每月的7*6单元格在单纯的Excel表中,我们很难采用逻辑判断和循环的方式获取在7*6单元格集合中的第一个星期一应该是哪一天;但我们知道这个7*6单元格所在月的第一天即1号却是固定的,同样当日期固定后,该日期所在的星期几也是固定的,假设2010-01-01为星期五,那星期一是几号呢?很显然,为2010年1月1号向前推4天即2009年12月28号,星期二则为1月1号向前推3天,以此类推,可以推到整个42个单元格中,只不过超过当月第一天的日期则向后推了。 如果我们换个思路可能更好些,在第一个7*6单元格集合中的首个星期一为2010年1月1号向前推5天即星期五,然后加1天,这也是理所当然的求法,那么星期二则为1月1号向前推5天,然后加2天,以此类推,推倒第42个单元格中则为1月1号向前推5天,然后加42天了,从1到42则为一个整数的序列;这样就变成Excel更擅长的计算方式了。

日历工作计划表excel怎么做

竭诚为您提供优质文档/双击可除日历工作计划表excel怎么做 篇一:如何用exceL表格制作日历 今天我们介绍用excel制作万年历的方法。这个万年历可以显示当月的月历,还可以随意查阅任何日期所属的月历,非常方便。如果你愿意,还可以让它在特殊的日子里显示不同的提醒文字,一起来试试吧! 本文所涉及到的函数有: 1、AnD(logical1,logical2,...) 2、DATe(year,month,day) 3、DAY(serial_number) 4、IF(Logical,Value_if_true,Value_if_false) 5、InT(number) 6、monTh(serial_number) 7、now() 8、oR(logical1,logical2,...) 1、启动exceL20XX,新建一个工作表,取名保存(如万年历.xls),并在相应的单元格中,输入如图1所示的文本。

2、同时选中b1、c1、D1单元格,按“格式”工具栏上的“合并及居中”按钮,将其合并成一个单元格,并输入公式:=ToDAY()。 选中b1(合并后的)单元格,执行“格式→单元格”命令,打开“单元格格式”对话框(如图2),在“数字”标签中的“分类”下面选中“日期”选项,再在右侧“类型”下面选中“二○○一年三月十四日”选项,“确定”退出,将日期设置成中文形式。 注意:ToDAY()函数用于提取当前系统日期,请将系统日期一定要调整准确哟。 3、选中F1单元格,输入公式:=IF(weeKDAY(b1,2)=7,"日",weeKDAY(b1,2));选中h1单元格,输入公式:=now()。 选中F1单元格,打开“单元格格式”对话框,在“数字”标签中的“分类”下面选中“特殊”选项,再在右侧“类型”下面选中“中文小写数字”选项,“确定”退出,将“星期数”设置成中文小写形式;选中h1单元格,打开“单元格格式”对话框,在“数字”标签中的“分类”下面选中“时间”选项,再在右侧“类型”下面选中一款时间格式,“确定”退出。 注意:①上述前面一个公式的含义是:如果(IF)当前日期(b1)是星期“7” (weeKDAY(b1,2)=7),则在F1单元格中显示“日”,否

制作新年万年历excel

制作新年万年历有很多办法,但用Office的excel表格制作你又试过没?新年伊始,制作一个新年万年历送给别人新年的祝福,这份心意是非常重要的。下面给大家介绍用Excel 制作万年历。今天我们介绍用Excel制作万年历的方法。 新年伊始,制作一个新年万年历送给别人新年的祝福,这份心意是非常重要的。制作新年万年历有很多办法,但用Office的Excel表格制作你又试过没?下面给大家介绍用Excel制作万年历。 今天我们介绍用Excel制作万年历的方法。这个新年万年历可以显示当月的月历,还可以随意查阅任何日期所属的月历,非常方便。如果你愿意,还可以让它在特殊的日子里显示不同的提醒文字,一起来试试吧! 本文所涉及到的函数有: 1、AND (logical1,logical2, ...) 2、DATE (year,month,day) 3、DAY (serial_number) 4、IF (Logical,Value_if_true,Value_if_false) 5、INT (number) 6、MONTH (serial_number) 7、NOW () 8、OR (logical1,logical2, ...) 1、启动EXCEL2003,新建一个工作表,取名保存(如万年历.xls),并在相应的单元格中,输入如图1所示的文本。 2、同时选中B1、C1、D1单元格,按“格式”工具栏上的“合并及居中”按钮,将其合并成一个单元格,并输入公式:=TODAY()。

选中B1(合并后的)单元格,执行“格式→单元格”命令,打开“单元格格式”对话框(如图2),在“数字”标签中的“分类”下面选中“日期”选项,再在右侧“类型”下面选中“二○○一年三月十四日”选项,“确定”退出,将日期设置成中文形式。 注意:TODAY()函数用于提取当前系统日期,请将系统日期一定要调整准确哟。 3、选中F1单元格,输入公式:=IF(WEEKDAY(B1,2)=7,"日",WEEKDAY(B1,2));选中H1单元格,输入公式:=NOW()。选中F1单元格,打开“单元格格式”对话框,在“数字”标签中的“分类”下面选中“特殊”选项,再在右侧“类型”下面选中“中文小写数字”选项,“确定”退出,将“星期数”设置成中文小写形式;选中H1单元格,打开“单元格格式”对话框,在“数字”标签中的“分类”下面选中“时间”选项,再在右侧“类型”下面选中一款时间格式,“确定”退出。注意:①上述前面一个公式的含义是:如果(IF)当前日期(B1)是星期“7”(WEEKDAY(B1,2)=7),则在F1单元格中显示“日”,否则,直接显示出星期的数值(WEEKDAY(B1,2))。②上述第二个函数(NOW())用于提取当前系统日期和时间,也请将系统日期和时间调整准确。 4、在I1、I2单元格分别输入1900、1901,然后同时选中I1、I2单元格,用“填充柄”向下拖拉至I151单元格,输入1900—2050年份序列。同样的方法,在J1至J12单元格中输入1—12月份序列。 5、选中D13单元格,执行“数据→有效性”命令,打开“数据有效性”对话框(如图3),按“允许”右侧的下拉按钮,选中“序列”选项,在“来源”下面的方框输入:=$I$1:$I$151,“确定”退出。

用EXCEL做日历牌

用EXCEL做日历牌(公历) 2011-08-05 11:32 以前很多人喜欢在办公桌上放一本台历,方便查询日期,现在电脑已经普及了,大家都喜欢从电脑上查看日历,又方便又不占地方用编程的方法可以制做电子日历,但会编程的人不多。如今EXCEL电子表格的普及率很高,由于它强大的数据处理能力,被很多在EXCEL中有很多时间函数,通过这些函数可以制做一款简单实用的日历牌。 先看一下做好的样式: 在这个日历牌的上面左右两个微调按钮,可以通过它们调整想要显示的年月。 下面就介绍制做过程 1、选画边框 其中C2与D2单元格是合并单元格,用于显示年份。由于年份是四位数字,所以要占用两个单元格。 其中的E10:G10也是合并单元格,这是为了显示“今天”的日期,包含了年月日三个内容,所以要占三个单元格。 2、填入内容 这些内容不需要公式,直接手工输入,根据自己的喜好设置字体、字号、颜色。 注意年份输入在C2单元格,月份输入在F2单元格,这两个位置会被下面的公式所引用。 3、日历公式 这是关键一步,要输入公式了,公式的区域在B4:H9,由于第一个单元格是B4单元格,所以公式中要对它进行“绝对引用”。 可能很多人都不相信,这个区域中的公式都是一样的,虽然B4:H9区域共有42个单元格,但都使用了完全相同的公式,只要在B 公 =IF(OR(((ROW()-ROW($B$4))*7+(COLUMN()-COLUMN($B$4)-WEEKDAY(DATE($C$2,$F$2,1))+2))>DAY(DATE($C$2,$F$2+1,1)-1 公式有点长,分析起来感觉有些费力,我们试着对它进行“简化”。 可以看到公式中有一部份内容重复出现了三次,即“((ROW()-ROW($B$4))*7+(COLUMN()-COLUMN($B$4)-WEEKDAY(DATE($C$2还有一小段“DAY(DA TE($C$2,$F$2+1,1)-1)”,我们给它起名为“最后一天”,因为它是计算日历牌中,当月最后一天的号数,也可以 然后把“号”与“最后一天”代入公式看一下: 公式就变成=IF(OR((号>最后一天),(号<1)),"",号) 这样是不是简单很多了,也容易理解了。 这就是一个常见的IF判断公式,在条件部份使用了OR函数进行逻辑“或”运算,只要“(号>最后一天),(号<1)”两部份中,任一部份为 提示:这只是为了分析方便而做的“简化”,实际使用时还要使用原公式的。 提示:对所有长公式都可以用这种方法“简化”,然后对每一部份逐一分析理解。 首先这是一个由IF函数构成的判断公式,大家都知道IF函数有三个参数,第一个参数是“条件”,第二个参数是“条件”为“真”是执行公式的含义是:如果当前单元格中显示的“号”大于当前月的“最后一天”或者小于“1”,那就说明这个“号”不应显示在当前月份牌中,

用excel制作万年历的公式问题

用excel制作万年历的公式问题 2010-10-18 21:44 提问者:匿名|浏览次数:1208次 用excel制作万年历时,在显示日期的单元格区域输入的这个公式如何理解, m_day-(WEEKDAY(m_day)-1)+(ROW()-5)*7这一步是怎么计算出来的?具体公式如下: =IF(MONTH(m_day)<>MONTH(m_day-(WEEKDAY(m_day)-1)+(ROW()-5)*7 +COLUMN()-2),"",m_day-(WEEKDAY(m_day)-1)+(ROW()-5)*7+COLUMN()-2 ) 我来帮他解答 2010-10-19 01:16 满意回答 不清楚你的公式是在哪个单元格输入。 “m_day-(WEEKDAY(m_day)-1)+(ROW()-5)*7”—— m_day……是个自定义区域名称,可以直接引用一个单元格区域,可以是数值或日期格式。 (WEEKDAY(m_day)-1)……是借用星期函数,返回星期几(表现为:星期日=1、星期一=2、……),其实公式可以简化:WEEKDAY(m_day,2) (ROW()-5)*7……这一步才是关键。利用行号*7,与公式中的COLUMN()配合,使向右每格增加1(天),至第7天(增加6天)后向下填充,使上下行相差“7”,就是上下间隔一个星期。 看他的附图,公式应该在第5行输入,故日期第一行=(5-5)*7=0,日期不增减。随着公式向下填充,每行增加7(天)。 至于该段公式要用引用原数据的单元格m_day减去星期表现形式的1~7,再加上0~7~14~21……,使数据在所给定的数值(或日期),逐格显示顺序日期。2 |评论

excel制作日历

excel 制作日历 以前很多人喜欢在办公桌上放一本台历,方便查询日期,现在电脑已经普及了,大家都喜欢从电脑上查看日历,又方便又不占地方。 用编程的方法可以制做电子日历,但会编程的人不多。如今EXCEL*子表格的 普及率很高,由于它强大的数据处理能力,被很多人当做必不可少的办公工具。 在EXCEL中有很多时间函数,通过这些函数可以制做一款简单实用的日历牌。 先看一下做好的样式: 在这个日历牌的上面左右两个微调按钮,可以通过它们调整想要显示的年月。 面就介绍制做过程 1、选画边框 其中C2与D2单元格是合并单元格,用于显示年份。由于年份是四位数字,所以要占用两个单元格。 其中的E10:G10也是合并单元格,这是为了显示“今天”的日期,包含了年月日三个内容,所以要占三个单元格。 2、填入内容 这些内容不需要公式,直接手工输入,根据自己的喜好设置字体、字号、颜色。注意年份输入在C2单元格,月份输入在F2单元格,这两个位置会被下面的公式所引用。3、日历公式 这是关键一步,要输入公式了,公式的区域在B4:H9,由于第一个单元格是B4 单元格,所以公式中要对它进行“绝对引用”。 可能很多人都不相信,这个区域中的公式都是一样的,虽然B4:H9区域共有42 个单元格,但都使用了完全相同的公式,只要在B4单元格输入一个公式,然后通 过拖动复制的方式就可以完成所有公式的输入。 公式 =IF(OR(((ROW()-ROW($B$4))*7+(COLUMN()-COLUMN($B$4)-

WEEKDAY(DATE($C$2,$F$2,1))+2 ))>DAY(DATE($C$2,$F$2+1,1)-1),((ROW()-ROW($B$4))*7+(COLUMN()- COLUMN($B$4)-WEEKD AY(DATE($C$2,$F$2,1))+2))<1),"",((ROW()-ROW($B$4))*7+(COLUMN()- COLUMN($B$4)-WEE KDAY(DATE($C$2,$F$2,1))+2))) 公式有点长,分析起来感觉有些费力,我们试着对它进行“简化”。 可以看到公式中有一部份内容重复出现了三次,即 ((ROW()-ROW($B$4))*7+(COLUMN()-COLUMN($B$4)- WEEKDAY(DATE($C$2,$F$2,1))+2)”) , 为了方便叙述,给它起个名字叫“号”,也就是几月几号的意思。 还有一小段“DAY(DATE($C$2,$F$2+1,1)- 1)”,我们给它起名为“最后一天”,因为它是计算日历牌中,当月最后一天的号数,也可以理解为这个月有几天。 然后把“号”与“最后一天”代入公式看一下 公式就变成=IF(OR((号>最后一天),(号<1)),"", 号) 这样是不是简单很多了,也容易理解了。 这就是一个常见的IF判断公式,在条件部份使用了OR函数进行逻辑“或”运 算,只要“(号>最后一天),(号<1)”两部份中,任一部份为“真”,就使条件成立。 提示: 这只是为了分析方便而做的“简化”,实际使用时还要使用原公式的。 提示: 对所有长公式都可以用这种方法“简化”,然后对每一部份逐一分析理解。 首先这是一个由IF 函数构成的判断公式,大家都知道IF 函数有三个参数,第一个参数是“条件”,第二个参数是“条件”为“真”是执行的部份,第三个参数是 条件”为“假”时执行的部份,一般的使用格式为if( 条件,真,假) 公式的含义是: 如果当前单元格中显示的“号”大于当前月的“最后一天”或者小于“1”,

如何用EXCEL表格制作万年历

1、启动EXCEL2003,新建一个工作表,取名保存(如万年历.xls),并在相应的单元格中,输入如图1所示的文本。 ① 2、同时选中B1、C1、D1单元格,按“格式”工具栏上的“合并及居中”按钮,将其合并成一个单元格,并输入公式:=TODAY()。 选中B1(合并后的)单元格,执行“格式→单元格”命令,打开“单元格格式”对话框(如图2),在“数字”标签中的“分类”下面选中“日期”选项,再在右侧“类型”下面选中“2001-3-14”选项,“确定”退出,将日期设置成中文形式。

② 注意:TODAY()函数用于提取当前系统日期,请将系统日期一定要调整准确哟。 3、选中F1单元格,输入公式:=IF(WEEKDAY(B1,2)=7,"日",WEEKDAY(B1,2));选中H1单元格,输入公式:=NOW()。 选中F1单元格,打开“单元格格式”对话框,在“数字”标签中的“分类”下面选中“特殊”选项,再在右侧“类型”下面选中“中文小写数字”选项,“确定”退出,将“星期数”设置成中文小写形式;选中H1单元格,打开“单元格格式”对话框,在“数字”标签中的“分类”下面选中“时间”选项,再在右侧“类型”下面选中一款时间格式,“确定”退出。 注意:①上述前面一个公式的含义是:如果(IF)当前日期(B1)是星期“7”(WEEKDAY(B1,2)=7),则在F1单元格中显示“日”,否则,直接显示出星期的数值(WEEKDAY(B1,2))。 ②上述第二个函数(NOW())用于提取当前系统日期和时间,也请将系统日期和时间调整准确。

4、在I1、I2单元格分别输入1800、1801,然后同时选中I1、I2单元格,用“填充柄”向下拖拉至I301单元格,输入1800—2100年份序列。 同样的方法,在J1至J12单元格中输入1—12月份序列。 5、选中D13单元格,执行“数据→有效性”命令,打开“数据有效性”对话框(如图3),按“允许”右侧的下拉按钮,选中“序列”选项,在“来源”下面的方框输入:=$I$1:$I$301,“确定”退出。 ③ 同样的操作,将F15单元格数据有效性设置为“=$J$1:$J$12”序列。 注意:经过这样的设置以后,当我们选中D15(或F15)单元格时,在单元格右侧出现一个下拉按钮,按此下拉按钮,即可选择年份(或月份)数值,快速输入需要查询的年、月值。 6、选中A2单元格,输入公式: =IF(F13=2,IF(OR(D13/400=INT(D13/400),AND(D13/4=INT(D13/4),D13/100<>INT(D13/100)))

用Excel制作万年历的一种方法

用Excel制作万年历的一种方法 1.概述 Office 2007是微软Office产品史上最具创新与革命性的一个版本。全新设计的用户界面、稳定安全的文件格式、无缝高效的沟通协作。 Excel是Office套件中的一个重要组件之一。直观的界面、出色的计算功能和图表工具,再加上成功的市场营销,使Excel成为最流行的微机数据处理软件。 日历分为阴历和阳历。阳历的历年为一个回归年,现时国际通用的公历(格里高历)即为太阳历的一种,亦简称为阳历;阴历亦称月亮历,或称太阴历,其历月是一个朔望月,历年为1 2个朔望月,其大月30天,小月29 天;中国的农历就是阴阳历的一种。 如何在Excel实现万年历是对Office能力的综合运用,又是分析问题并进行求解的一系列过程。 2.分析 2.1整体构思 在进行整体构思之前,不妨我们先看看多数日历是怎样的情形,其中: 1、上面居中为当前年份。 2.然后为当年的12个月份,至于每行为3个月还是4个月取决于可见界面的大小和美观。 3.总所周知,一周则为7天,每个月最大31天,最小28天;如果1号为周六或周日的话,则该月 可能要跨越6周;因此每个月最大的跨越为六周,事实上我们找一下其它日历的模板,就会发现一般都是六周。所以我们可以把每个月视为一个7*6的单元格集合。

2.2算法问题 当我们确定了每个月事实上为7*6的单元格集合后,我们接下来要做以下几件事情: 1.如何定位和填充相应的每月的7*6单元格 在单纯的Excel表中,我们很难采用逻辑判断和循环的方式获取在7*6单元格集合中的第一个星期一应该是哪一天;但我们知道这个7*6单元格所在月的第一天即1号却是固定的,同样当日期固定后,该日期所在的星期几也是固定的,假设2010-01-01为星期五,那星期一是几号呢?很显然,为2010年1月1号向前推4天即2009年12月28号,星期二则为1月1号向前推3天,以此类推,可以推到整个42个单元格中,只不过超过当月第一天的日期则向后推了。 如果我们换个思路可能更好些,在第一个7*6单元格集合中的首个星期一为2010年1月1号向前推5天即星期五,然后加1天,这也是理所当然的求法,那么星期二则为1月1号向前推5天,然后加2天,以此类推,推倒第42个单元格中则为1月1号向前推5天,然后加42天了,从1到42则为一个整数的序列;这样就变成Excel更擅长的计算方式了。 2.如何屏蔽非当月的日期 大家也许会注意到在这个7*6的单元格集合中,一定会混入不属于这个月的日期,怎么把这些不属于本月的日期去除呢?如果我们用函数来实现的话,也不是不可能,只不过过于复杂。 幸好Excel提供了条件格式,条件格式的目的就是为符合或不符合相应条件的单元格提供该单元格的格式化需求,如果我们将小于当月第一天,或者大于等于下个月第一天值的单元格字符设置为白色字体,同时将这些单元格的背景色也置为白色,岂不是看不到了嘛。 3.农历问题 农历问题是属于典型的算法问题,我还从未见到在单纯的Excel表格中使用函数和表达式就能实现农历算法的。很幸运的是,Office提供了强大的编程语言VBA,再加上强大的互联网搜索引擎,我们很容易就能找到并实现农历的功能。 关于如何对不在当月的农历日期进行屏蔽,详情见步骤。

相关文档
最新文档