搜档网
当前位置:搜档网 › 如何用EXCEL表格制作日历

如何用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、启动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(B11>=$A$2,0,IF(B11>0,B11+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单元格中的内容可以改变外,其它单元格中的内容均不能改变,保证了万年历的使用可靠性。

在VB中操纵Excel

一.Excel对象模块

Application

对象 | 集合

----------------------------------

|-----Assistant |----Addins(Addin)

|-----AutoComect |-----OLEDBErrors

|-----Debug |-----CommandBars(CommandBar)

|-----VBE |-----Dialogs(Dialog)

|-----WorksheetFunction |-----RecentFilds(RecentFile)

|-----DefaultWebOptions |-----Windows(Window)

|-----LanguageSettings |-----Workbooks(Workbook)

|-----Filesearch |------Names(name)

|-----AnswerWizard |------ODBCErrors

最上层的Application是指整个应用程序,其中最常用到的Workbooks代表活页簿集合,在其后的括号内的Workbook是指一个工作簿。

在VB中要打开Excel,首先要引用Microsoft Excel (或)Object Lobrary。

打开的步骤是:(1)定义两个变量,数据类型指定为..

(2)激活Excel应用程序。(3)打开工作簿(我们假设在当前路径下有一个工作簿)。

代码如下:

Option Explicit

Public appExcel As

Public wbExcel As

Private Sub Setup_Excel_object()

Set appExcel = CreateObject("")

Set wbExcel = & "\")

= True '使对象可见

End Sub

二.工作表对象Worksheet

Workbooks对象有一个集合对象--工作表Worksheets,,用来放工作表相关的资料。

Workbooks(workbook)

对象 | 集合

------------------------

|----HTMLProjcet |----Publishobjects

|----RoutingSlip |----DocumentProperties

|----Areas |----Worksheets

|----WebOptions |----Names

|----VBProject |----CustomViews

|----CommandBars

|----PivotCaches

|----Windows

|----Styles

|----Charts

调用方法是声明一个工作表变量,用For-Each循环方式可以读取集合对象Workbooks 里的所有工作表名。

代码如下:

Dim temp As

For Each temp In 'wbExcel是上面代码中声明的Workbook

Next

三.读取工作表某个选取范围的内容。

要读取工作表某个范围单元格,可先定义一个Excel范围对象变量,然后使用Rows或Columns函数指定某行或某列的范围,范围单元格(Cells)地址以目前被选取范围为基准。具体方法如下:

(1)设置工作表对象变量操作哪个工作表;

(2)选取工作表的某行或某列;

(3)在上面的选取范围内读取某个单元格内容。

代码如下:

Dim Tempsheet As '定义Excel工作表

Dim TempRange As '定义Excel工作表范围变量

'第一步:选取工作表Sheet1

Set Tempsheet = ("sheet1")

'第二步:选取第二行(以这行为第一行)

Set TempRange = (2)

'第三步:读取范围内第一行.第二列的单元格

= (1, 2)

四.其他

用("").Column方法可以查找目前范围内第一行的第一个空白单元格

如何实现VB与EXCEL的无缝连接

2003-02-17··吴刚··yesky

VB是常用的应用软件开发工具之一,由于VB的报表功能有限,而且一但报表格式发生变化,就得相应修改程序,给应用软件的维护工作带来极大的不便。因此有很多程序员现在已经充分利用EXECL的强大报表功来实现报表功能。但由于VB与EXCEL由于分别属于不同的应用系统,如何把它们有机地结合在一起,是一个值得我们研究的课题。

一、 VB读写EXCEL表:

VB本身提自动化功能可以读写EXCEL表,其方法如下:

1、在工程中引用Microsoft Excel类型库:

从"工程"菜单中选择"引用"栏;选择Microsoft Excel Object Library(EXCEL2000),然后选择"确定"。表示在工程中要引用EXCEL类型库。

2、在通用对象的声明过程中定义EXCEL对象:

Dim xlApp As

Dim xlBook As

Dim xlSheet As

3、在程序中操作EXCEL表常用命令:

Set xlApp = CreateObject("") '创建EXCEL对象

Set xlBook = "文件名") '打开已经存在的EXCEL工件簿文件

= True '设置EXCEL对象可见(或不可见)

Set xlSheet = ("表名") '设置活动工作表

(row, col) =值 '给单元格(row,col)赋值

'打印工作表

(True) '关闭工作簿

'结束EXCEL对象

Set xlApp = Nothing '释放xlApp对象

(xlAutoOpen) '运行EXCEL启动宏

(xlAutoClose) '运行EXCEL关闭宏

4、在运用以上VB命令操作EXCEL表时,除非设置EXCEL对象不可见,否则VB程序可继续执行其它操作,也能够关闭EXCEL,同时也可对EXCEL进行操作。但在EXCEL操作过程中关闭EXCEL对象时,VB程序无法知道,如果此时使用EXCEL对象,则VB程序会产生自动化错误。形成VB程序无法完全控制EXCEL的状况,使得VB与EXCEL脱节。

二、 EXCEL的宏功能:

EXCEL提供一个Visual Basic编辑器,打开Visual Basic编辑器,其中有一工程属性窗口,点击右键菜单的"插入模块",则增加一个"模块1",在此模块中可以运用Visual Basic 语言编写函数和过程并称之为宏。其中,EXCEL有两个自动宏:一个是启动宏(Sub

Auto_Open()),另一个是关闭宏(Sub Auto_Close())。它们的特性是:当用EXCEL打含有启动宏的工簿时,就会自动运行启动宏,同理,当关闭含有关闭宏的工作簿时就会自动运行关闭宏。但是通过VB的自动化功能来调用EXCEL工作表时,启动宏和关闭宏不会自动运行,而需要在VB中通过命令 (xlAutoOpen)和 (xlAutoClose) 来运行启动宏和关闭宏。

三、 VB与EXCEL的相互勾通:

充分利用EXCEL的启动宏和关闭宏,可以实现VB与EXCEL的相互勾通,其方法如下:

在EXCEL的启动宏中加入一段程序,其功能是在磁盘中写入一个标志文件,同时在关闭宏中加入一段删除此标志文件的程序。VB程序在执行时通过判断此标志文件存在与否来判断EXCEL是否打开,如果此标志文件存在,表明EXCEL对象正在运行,应该禁止其它程序的运行。如果此标志文件不存在,表明EXCEL对象已被用户关闭,此时如果要使用EXCEL对象运行,必须重新创建EXCEL对象。

四、举例:

1、在VB中,建立一个FORM,在其上放置两个命令按钮,将Command1的Caption属性改为EXCEL,Command2的Caption属性改为End。然后在其中输入如下程序:

Dim xlApp As '定义EXCEL类

Dim xlBook As '定义工件簿类

Dim xlsheet As '定义工作表类

Private Sub Command1_Click() '打开EXCEL过程

If Dir("D:\temp\") = "" Then '判断EXCEL是否打开

Set xlApp = CreateObject("") '创建EXCEL应用类

= True '设置EXCEL可见

Set xlBook = "D:\temp\") '打开EXCEL工作簿

Set xlsheet = (1) '打开EXCEL工作表

'激活工作表

(1, 1) = "abc" '给单元格1行驶列赋值

(xlAutoOpen) 运行EXCEL中的启动宏

Else

MsgBox ("EXCEL已打开")

End If

End Sub

Private Sub Command2_Click()

If Dir("D:\temp\") <> "" Then '由VB关闭EXCEL

(xlAutoClose) '执行EXCEL关闭宏

(True) '关闭EXCEL工作簿

'关闭EXCEL

End If

Set xlApp = Nothing '释放EXCEL对象

End

End Sub

2、在D盘根目录上建立一个名为Temp的子目录,在Temp目录下建立一个名为""的EXCEL文件。

3、在""中打开Visual Basic编辑器,在工程窗口中点鼠标键选择插入模块,在模块中输入入下程序存盘:

Sub auto_open()

Open "d:\temp\" For Output As #1 '写标志文件

Close #1

End Sub

Sub auto_close()

Kill "d:\temp\" '删除标志文件

End Sub

4、运行VB程序,点击EXCEL按钮可以打开EXCEL系统,打开EXCEL系统后,VB程序和EXCEL分别属两个不同的应用系统,均可同时进行操作,由于系统加了判断,因此在VB 程序中重复点击EXCEL按钮时会提示EXCEL已打开。如果在EXCEL中关闭EXCEL后再点EXCEL 按钮,则会重新打开EXCEL。而无论EXCEL打开与否,通过VB程序均可关闭EXCEL。这样就实现了VB与EXCEL的无缝连接。

Excel制作奖金计算表

2006年08月16日 03:52:06 陈秀峰

源码下载

某公司规定:一个月奖金基数为300元,病假1天扣15元,事假一天扣30元,旷工一天扣60元,扣完为止。使用这个奖金计算表时,只要将员工的出勤情况记录在表中,该员工的奖金将自动计算出来,兼有考勤和计算奖金两种功能。自动统计表做好以后还可以保存成模板,以便以后使用。

本文所涉及到的Excel函数有:

1、COUNTIF(Range,Criteria)

2、MONTH(serial_number)

3、TODAY()

注意:图中符号的含义是:B表示病假,S表示事假,G表示旷工,Q表示出勤,J表示法定休息日。

1、启动Excel2003,按照图1所示的样式,制作一张二维表格,并填入相关文本。

2、将A1至BM1单元格合并成一个单元格后,输入表格标题(如“晓风公司考勤及奖金表”),并设置好字体、字号等。

3、将C2和D2单元格合并后,输入公式:=MONTH(TODAY())&"月",用于显示出当前的月份。

注意:在上述单元格中直接输入月份数值也是可行的。

4、选中BM4单元格,输入公式:

=IF(300-COUNTIF(C4:BL4,"B")*(C4:BL4,"S")*15-COUNTIF(C4:BL4,"G")*30>0,300-COUNTI

F(C4:BL4,"B")*(C4:BL4,"S")*15-COUNTIF(C4:BL4,"G")*30,0),确认,计算出第一位员工的当月奖金额。

注意:上述公式的含义是:用“COUNTIF(C4:BL4,"B")、COUNTIF(C4:BL4,"S")、COUNTIF(C4:BL4,"G")”分别用于统计每位员工的病假、事假、旷工的次数,再分别乘以“、15、30”(每“半天”为一次)计算出所要扣去的奖励额,再用基数“300”减去上述扣去的金额。如果(IF)差大于“0”,则显示差(即员工的奖金额),否则显示“0”(扣完为止)。

5、再次选中BM4单元格,用“填充柄”将上述公式复制到下面的单元格中,用于计算其它员工的当月奖励额。

注意:具体复制的数量,请根据员工的实际数目确定。

6、清空表格中所填写的数据,执行“文件→保存”命令,打开“另存为”对话框(如图2),按“保存类型”右边的下拉按钮,选中“模板(*.xlt)”选项,在文件名方框中输入一名称(如“奖金表.xlt”),单击“保存”按钮,将制作好的表格文档保存为模板。

7、以后,每个月第一天,启动Excel,执行“文件→新建”命令,展开“新建工作簿”任务窗格(如图3)。

点击其中的“本机上的模板”选项,打开“模板”对话框(如图4),选中“奖金表”模板文件,单击“确定”按钮即可新建一个空的“奖金表1”工作簿文档。

选中C2单元格(即保存月份的单元格),将鼠标移到编辑栏中,然后按一下F9功能键,将公式(=MONTH(TODAY())&"月")转换为具体的值(如“12月”),最后将文档保存一下。

8、以后就可以用这个计算表逐日对员工进行考勤,到了月底就可以自动计算出奖金数据了。

用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表格制作日历 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日历控件教程详细

E x c e l日历控件教程详细 Revised by BLUE on the afternoon of December 12,2020.

1.Alt+F11 按下显示代码窗口后,再松开Alt+F11. 2.然后按F7 ,调出VBA 窗口。 3.粘贴以下代码. Private Sub Calendar1_Click() Dim MyDay As Date ActiveCell = Mydate = 'MsgBox Mydate = 0 End Sub Private Sub Worksheet_SelectionChange(ByVal Target As Range) If = 1 Or = 1 And > 0 Then If IsDate(Target) Then = Target Else End If = -1 = + Else = 0 End If End Sub 4.打开文件→保存book1(S) 5.打开视图→对象窗口 6.打开插入→对象窗口 7.找到日历控件或,按确定退出。 8.单击第一列(A列)中的任一单元格,选择日历中的需要的日期即可。备注: 要改变日期输入位置,可按以下方法调整代码,找到下面的代码行(此代码行的意思是在A列(第1列)中添加日历。 If = 1 Or = 1 And > 0 Then 然后根据以下的方法覆盖粘贴此行代码

1.以下这一句就是 B3:C5区域调用日期控件. If = 2 And > 2 And < 6 Or = 3 And > 2 And < 6 Then 2.这句是说在第 2列和第 3列调用日期控件. If = 2 Or = 3 And > 0 Then 3.这句是说在C2:C50调用日期控件. If = 3 And > 1 And < 51 Then

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制作日历

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)”两部份中,任一部份为“真”,就使条件成立。 提示:这只是为了分析方便而做的“简化”,实际使用时还要使用原公式的。提示:对所有长公式都可以用这种方法“简化”,然后对每一部份逐一分析理解。

日历工作计划表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做日历牌

用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 制作日历 以前很多人喜欢在办公桌上放一本台历,方便查询日期,现在电脑已经普及了,大家都喜欢从电脑上查看日历,又方便又不占地方。 用编程的方法可以制做电子日历,但会编程的人不多。如今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.A l t+F11按下显示代码窗口后,再松开A l t+F11. 2.然后按F7,调出VBA窗口。 3.粘贴以下代码. PrivateSubCalendar1_Click() DimMyDayAsDate ActiveCell=Calendar1.Value Mydate=Calendar1.Value 'MsgBoxMydate Calendar1.Visible=0 EndSub PrivateSubWorksheet_SelectionChange(ByValTargetAsRange) IfTarget.Column=1OrTarget.Column=1AndTarget.Row>0Then IfIsDate(Target)Then Calendar1.Value=Target Else Calendar1.Today EndIf Calendar1.Visible=-1 Calendar1.Top=ActiveCell.Top+ActiveCell.Height Else Calendar1.Visible=0 EndIf EndSub 4.打开文件→保存book1(S) 5.打开视图→对象窗口 6.打开插入→对象窗口 7.找到日历控件11.0或9.0,按确定退出。 8.单击第一列(A列)中的任一单元格,选择日历中的需要的日期即可。 备注: 要改变日期输入位置,可按以下方法调整代码,找到下面的代码行(此代码行的意思是在A列(第1列)中添加日历。 IfTarget.Column=1OrTarget.Column=1AndTarget.Row>0Then 然后根据以下的方法覆盖粘贴此行代码 1.以下这一句就是B3:C5区域调用日期控件.

2020年记事日历表excel版

2020.1 日一二三四五六 1234 元旦腊八节初九初十567891011 十一小寒十三十四十五十六十七12131415161718 十八十九二十廿一廿二廿三廿四19202122232425 廿五大寒廿七廿八廿九除夕春节262728293031 初二初三初四初五初六初七

2020.2 日一二三四五六 1 初八2345678 初九初十立春十二十三十四元宵9101112131415 十六十七十八十九二十情人节廿二16171819202122 廿三廿四廿五雨水廿七廿八廿九23242526272829 二月初二初三初四初五初六初七

2020.3 日一二三四五六1234567 初八初九初十十一惊蛰十三十四891011121314 妇女节十六十七十八植树节二十廿一15161718192021 廿二廿三廿四廿五廿六春分廿八22232425262728 廿九三十三月初二初三初四初五293031 初六初七初八

2020.4 日一二三四五六 1234 愚人节初十十一清明567891011 十三十四十五十六十七十八十九12131415161718 复活节廿一廿二廿三廿四廿五廿六19202122232425 谷雨廿八廿九三十四月初二初三2627282930 初四初五初六初七初八

2020.5 日一二三四五六 12 劳动节初十3456789 十一青年节立夏十四十五十六十七10111213141516 母亲节十九二十廿一廿二廿三廿四17181920212223 廿五廿六廿七小满廿九三十闰四月24252627282930 初二初三初四初五初六初七初八 31 初九

相关主题