用excel制作十二星座万年历

翻开2015日历的最后一页,20015迈着轻快的步伐向我们走来。每年过年,我都要做的一件事就是换掉办公桌上的旧台历。年复一年很麻烦吗?今天,让我们通过Excel创建一个万年历,它不仅可以随时浏览19002100之间任意年份的日期,而且还配备了十二星座,非常漂亮。

首先,定制日历的框架

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

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

技巧

从下拉列表中选择年份。

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

图1

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

图2

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

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

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

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

第三步:选择A列、B列、ANAZ列、第1行、第2行和第4150行(按Ctrl键检查),并设置?单元格底纹?设置为白色。此设置的目的是突出日历的主要部分。为了美观,我们可以在C3AM40单元格区域添加一个细的黑色实心边框。

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

步骤5:年份(R5)单元格有点单调,所以我们添加一个边框来装饰它。分别选择O4AA7和L5AD6的单元格区域,并为这两个区域各添加一个彩色双线边框。添加后,调整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单元格?填充手柄?将公式复制到单元格H13L13中,分别选择单元格H13L13,并在每个单元格中手动调整公式。工作日?将函数的判别式值,即等号右边的数字依次改为2、3、4、5和6,使其与星期相对应。

第四步:

选择单元格F14(一月第二周的对应单元格)并输入公式?=L13+1?(L13是上一行的最后一个单元格),在G14单元格中输入公式?=F14+1?,然后,拖?填充手柄?填写单元格H14L14。同样的方法,在下面四行中输入相应的公式,但在换行时一定要注意单元格引用。

第五步:

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

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