用excel制作十二星座万年历

取下2015的日历最后一页,20015迈着轻快的脚步向我们走来。每年过年,我要做的一件事就是把办公桌上的旧台历换掉。是不是一年比一年麻烦?今天我们通过Excel创建一个万年历,不仅可以随时浏览1900?2100之间任意一年的日期也配有十二星座,非常好看。

首先,定制日历的框架

第一步:运行Excel 2003并把?Sheet1?工作表被重命名为?万年历。按Ctrl+A选择整个工作表,然后执行?格式?专栏?列宽?命令,在弹出的对话框中输入?2.4?,点击?你确定吗?按钮将整个工作表的列宽调整为2.4。

第二步:选择R5?X6单元格,右击所选区域,选择?格式化单元格?命令,然后在“单元格格式”对话框中?对齐?在选项卡中选中?合并单元格?项来合并选定的单元格。万年历最终制作完成后,只需在此处输入生成日历的年份,按回车键即可自动生成该年十二个月的日历。

技巧

从下拉列表中选择年份。

在单元格R5中,除了手工输入,我们还可以设置一个下拉列表供用户选择:选择单元格BD1(选择BD列主要是为了防止该列在主界面显示,影响美观)并输入?1900?,选择BD2单元格并输入?1901?,同时选择两个单元格并拖动?填充柄?按顺序将下列单元格填充到数字2100;点击选择刚刚合并的R5单元格,执行?数据?有效性?订单,在?数据有效性?在对话框中?允许吗?从下拉菜单中选择?序列?,在?来源?在列中输入公式?=$BD$1:$BD$201?(见图1),点击?你确定吗?按钮,此时只要选中R5单元格,它的右边就会出现一个小按钮,点击它就可以从下拉列表中选择年份(1900?2100年)。

图1

第三步:选择F11?L11单元格,合并,回车?一月?(一月),居中,设置合适的字体和大小;然后依次在F12?在单元格L12中输入星期的英文缩写(例如,星期日、星期一、星期二等)。,你也可以用中文?日?、?一个?、?两个?来代替);点击下一步?插入?图片?从文件里?命令,插入事先准备好的十二星座图片(可从本文提供的下载包中获得),调整10行的行高,使其与图片高度一致。最终生成的万年历会自动生成星期底的日期,所以这里我们为日期预留了6行空格。剩下的11月历可以用同样的方法制作,如图2所示。

图2

第二,给日历穿上漂亮的外衣。

让我们进一步美化我们刚刚制作的日历。

第一步:执行?格式?工作表?背景?命令,在对话框(本文的材料包中提供)中选择准备好的背景图片,为工作表添加背景。

第二步:选择E9?AK37单元格区域,右击所选区域,选择?格式化单元格?订单。在打开单元格格式对话框中?格局?标签,设置?单元格底纹?白色;你在线吗?边界?此单元格区域的制表符?浅蓝色?颜色的粗实线边框。

第三步:选择A列、B列和an?AZ列,第1行,第2行和41行?50行(按Ctrl检查),设置?单元格底纹?设置为白色。此设置的目的是突出日历的主要部分。为了美观,我们可以把它改成C3?向AM40单元格区域添加细的黑色实心边框。

第四步:选择每月周六日对应的6行单元格,右键弹出单元格格式对话框,点击?字体?选项卡,将字体颜色设置为红色。然后,分别设置年份和月份名称的字体颜色、字体样式和字号。

第五步:year (R5)单元格有点单调,我们加个边框装饰一下。分别选择O4?AA7和L5?AD6单元格区域,为这两个区域各添加一个彩色双线边框,添加后调整4行和7行的高度,使边框看起来更美观。

第六步:点击?工具?选项?选项对话框中的命令?观点?选项卡,单击取消?网格线?项,以便工作表中的网格线可以隐藏。至此,这个示例日历的界面就设计好了(见图3)。

图3

第三,制作万年历

我们已经给前面的日历披上了漂亮的外衣,接下来要给它填充实际的内容,这样它才能知道过去和未来,成为真正的万年历。

如果我们知道某月某日是星期几1,那么在Excel中自动排列该月的日期是非常容易的:只需在前面的单元格中加上1就可以按顺序排列日期序列,也就是只要解决了自动识别每个月1的星期几的问题,结合大月、小月、闰年的识别,就可以实现任意年份按月自动排列日历的功能。下面简单介绍一下这种方法的思路。

第一步:

选择单元格F13并输入公式?= IF(WEEKDAY(DATE $ 5,1,1),2)=7,1," ")?(除去最外面的引号,下同)。上面公式的意思是:如果呢?R5?如果单元格中输入的年份65438+10月1是星期日,则在单元格F13中显示?1?,否则不会显示任何内容。

第二步:

选择单元格G13并输入公式?= IF(f 13 & lt;& gt"",F13+1,IF(WEEKDAY(DATE($ 5,1,1),2)=1,1," ")?这个公式的含义是:如果单元格F13不为空,则单元格F13中的数字加到1,否则?R5?在单元格中输入年份65438+10月1,确定是否是星期一。

第三步:

拖动G13单元格?填充柄?把公式复制到H13?在单元L13中,分别选择H13。L13单元格,手动调整每个单元格?工作日?将函数的判别值,即等号右边的数字依次改为2、3、4、5、6,使其对应星期。

第四步:

选择单元格F14(一月第二周的对应单元格),输入公式?=L13+1?(L13是上一行的最后一个单元格),在G14单元格中输入公式?=F14+1?,然后,拖?填充柄?填H14?L14电池足够了。同理,在下面四行中输入相应的公式,但一定要注意换行时的单元格引用。

第五步:

重复上述操作,分别设置下一个11月的日期序列。设置时需要注意的是,在标识每月1的星期几的公式中,?约会?函数中的月值对应实际的月值,例如设置二月日历时,?约会?函数的表达式应该是?= DATE($ 5,2,1雷亚尔)?。

限于篇幅,以上只是简单介绍,并没有解决大、小、闰月、日期的日期大于?31?现象等等。具体设置请参考?日历。xls?文件。此外,逐行复制公式也很繁琐。你也可以参考?yearly_calendar.xls?文件,学习如何通过Excel的高级功能完全实现日历自动更新,但这需要对Excel有更深的理解。