Excel函数应用完整手册Word文档格式.docx
《Excel函数应用完整手册Word文档格式.docx》由会员分享,可在线阅读,更多相关《Excel函数应用完整手册Word文档格式.docx(119页珍藏版)》请在冰豆网上搜索。
例如在公式“=IF(A3=0,"
"
A2/A3)”中,“A3=0”就是一个可以返回TRUE(真)或FALSE(假)两种结果的参数。
当“A3=0”为TRUE(真)时在公式所在单元格中填入“0”,否则在单元格中填入“A2/A3”的计算结果。
(3)数组
数组用于可产生多个结果,或可以对存放在行和列中的一组参数进行计算的公式。
Excel中有常量和区域两类数组。
前者放在“{}”(按下Ctrl+Shift+Enter组合键自动生成)内部,而且内部各列的数值要用逗号“,”隔开,各行的数值要用分号“;
”隔开。
假如你要表示第1行中的56、78、89和第2行中的90、76、80,就应该建立一个2行3列的常量数组“{56,78,89;
90,76,80}。
区域数组是一个矩形的单元格区域,该区域中的单元格共用一个公式。
例如公式“=TREND(B1:
B3,A1:
A3)”作为数组公式使用时,它所引用的矩形单元格区域“B1:
A3”就是一个区域数组。
(4)错误值
使用错误值作为参数的主要是信息函数,例如“ERROR.TYPE”函数就是以错误值作为参数。
它的语法为“ERROR.TYPE(error_val)”,如果其中的参数是#NUM!
,则返回数值“6”。
(5)单元格引用
单元格引用是函数中最常见的参数,引用的目的在于标识工作表单元格或单元格区域,并指明公式或函数所使用的数据的位置,便于它们使用工作表各处的数据,或者在多个函数中使用同一个单元格的数据。
还可以引用同一工作簿不同工作表的单元格,甚至引用其他工作簿中的数据。
根据公式所在单元格的位置发生变化时,单元格引用的变化情况,我们可以引用分为相对引用、绝对引用和混合引用三种类型。
以存放在F2单元格中的公式“=SUM(A2:
E2)”为例,当公式由F2单元格复制到F3单元格以后,公式中的引用也会变化为“=SUM(A3:
E3)”。
若公式自F列向下继续复制,“行标”每增加1行,公式中的行标也自动加1。
如果上述公式改为“=SUM($A$3:
$E$3)”,则无论公式复制到何处,其引用的位置始终是“A3:
E3”区域。
混合引用有“绝对列和相对行”,或是“绝对行和相对列”两种形式。
前者如“=SUM($A3:
$E3)”,后者如“=SUM(A$3:
E$3)”。
上面的几个实例引用的都是同一工作表中的数据,如果要分析同一工作簿中多张工作表上的数据,就要使用三维引用。
假如公式放在工作表Sheet1的C6单元格,要引用工作表Sheet2的“A1:
A6”和Sheet3的“B2:
B9”区域进行求和运算,则公式中的引用形式为“=SUM(Sheet2!
A1:
A6,Sheet3!
B2:
B9)”。
也就是说三维引用中不仅包含单元格或区域引用,还要在前面加上带“!
”的工作表名称。
假如你要引用的数据来自另一个工作簿,如工作簿Book1中的SUM函数要绝对引用工作簿Book2中的数据,其公式为“=SUM([Book2]Sheet1!
SAS1:
SAS8,[Book2]Sheet2!
SBS1:
SBS9)”,也就是在原来单元格引用的前面加上“[Book2]Sheet1!
”。
放在中括号里面的是工作簿名称,带“!
”的则是其中的工作表名称。
即是跨工作簿引用单元格或区域时,引用对象的前面必须用“!
”作为工作表分隔符,再用中括号作为工作簿分隔符。
不过三维引用的要受到较多的限制,例如不能使用数组公式等。
提示:
上面介绍的是Excel默认的引用方式,称为“A1引用样式”。
如果你要计算处在“宏”内的行和列,必须使用“R1C1引用样式”。
在这种引用样式中,Excel使用“R”加“行标”和“C”加“列标”的方法指示单元格位置。
启用或关闭R1C1引用样式必须单击“工具→选项”菜单命令,打开对话框的“常规”选项卡,选中或清除“设置”下的“R1C1引用样式”选项。
由于这种引用样式很少使用,限于篇幅本文不做进一步介绍。
(6)嵌套函数
除了上面介绍的情况外,函数也可以是嵌套的,即一个函数是另一个函数的参数,例如“=IF(OR(RIGHTB(E2,1)="
1"
,RIGHTB(E2,1)="
3"
5"
7"
9"
),"
男"
"
女"
)”。
其中公式中的IF函数使用了嵌套的RIGHTB函数,并将后者返回的结果作为IF的逻辑判断依据。
(7)名称和标志
为了更加直观地标识单元格或单元格区域,我们可以给它们赋予一个名称,从而在公式或函数中直接引用。
例如“B2:
B46”区域存放着学生的物理成绩,求解平均分的公式一般是“=AVERAGE(B2:
B46)”。
在给B2:
B46区域命名为“物理分数”以后,该公式就可以变为“=AVERAGE(物理分数)”,从而使公式变得更加直观。
给一个单元格或区域命名的方法是:
选中要命名的单元格或单元格区域,鼠标单击编辑栏顶端的“名称框”,在其中输入名称后回车。
也可以选中要命名的单元格或单元格区域,单击“插入→名称→定义”菜单命令,在打开的“定义名称”对话框中输入名称后确定即可。
如果你要删除已经命名的区域,可以按相同方法打开“定义名称”对话框,选中你要删除的名称删除即可。
由于Excel工作表多数带有“列标志”。
例如一张成绩统计表的首行通常带有“序号”、“姓名”、“数学”、“物理”等“列标志”(也可以称为字段),如果单击“工具→选项”菜单命令,在打开的对话框中单击“重新计算”选项卡,选中“工作簿选项”选项组中的“接受公式标志”选项,公式就可以直接引用“列标志”了。
B46”区域存放着学生的物理成绩,而B1单元格已经输入了“物理”字样,则求物理平均分的公式可以写成“=AVERAGE(物理)”。
需要特别说明的是,创建好的名称可以被所有工作表引用,而且引用时不需要在名称前面添加工作表名(这就是使用名称的主要优点),因此名称引用实际上是一种绝对引用。
但是公式引用“列标志”时的限制较多,它只能在当前数据列的下方引用,不能跨越工作表引用,但是引用“列标志”的公式在一定条件下可以复制。
从本质上讲,名称和标志都是单元格引用的一种方式。
因为它们不是文本,使用时名称和标志都不能添加引号。
3.函数输入方法
对Excel公式而言,函数是其中的主要组成部分,因此公式输入可以归结为函数输入的问题。
(1)“插入函数”对话框
“插入函数”对话框是Excel输入公式的重要工具,以公式“=SUM(Sheet2!
B9)”为例,Excel输入该公式的具体过程是:
首先选中存放计算结果(即需要应用公式)的单元格,单击编辑栏(或工具栏)中的“fx”按钮,则表示公式开始的“=”出现在单元格和编辑栏,然后在打开的“插入函数”对话框中的“选择函数”列表找到“SUM”函数。
如果你需要的函数不在里面,可以打开“或选择类别”下拉列表进行选择。
最后单击“确定”按钮,打开“函数参数”对话框。
对SUM函数而言,它可以使用从number1开始直到number30共30个参数。
对上面的公式来说,首先应当把光标放在对话框的“number1”框中,单击工作簿中的“Sheet2!
”工作表标签,“Sheet2!
”即可自动进入其中,接着鼠标拖动选中你要引用的区域即可。
接着用鼠标单击对话框的“number2”框,单击工作簿中的“Sheet3!
”工作表标签,其名称“Sheet3!
”即可自动进入其中,再按相同方法选择要引用的单元格区域即可。
上述方法的最大优点就是引用的区域很准确,特别是三维引用时不容易发生工作表或工作簿名称输入错误的问题。
(2)编辑栏输入
如果你要套用某个现成公式,或者输入一些嵌套关系复杂的公式,利用编辑栏输入更加快捷。
首先选中存放计算结果的单元格;
鼠标单击Excel编辑栏,按照公式的组成顺序依次输入各个部分,公式输入完毕后,单击编辑栏中的“输入”(即“√”)按钮(或回车)即可。
手工输入时同样可以采取上面介绍的方法引用区域,以公式“=SUM(Sheet2!
B9)”为例,你可以先在编辑栏中输入“=SUM()”,然后将光标插入括号中间,再按上面介绍的方法操作就可以引用输入公式了。
但是分隔引用之间的逗号必须用手工输入,而不能像“插入函数”对话框那样自动添加。
二、函数速查一览
(一)数据库函数
1.DAVERAGE
用途:
返回数据库或数据清单中满足指定条件的列中数值的平均值。
语法:
DAVERAGE(database,field,criteria)
参数:
Database构成列表或数据库的单元格区域。
Field指定函数所使用的数据列。
Criteria为一组包含给定条件的单元格区域。
2.DCOUNT
返回数据库或数据清单的指定字段中,满足给定条件并且包含数字的单元格数目。
DCOUNT(database,field,criteria)
3.DCOUNTA
返回数据库或数据清单指定字段中满足给定条件的非空单元格数目。
DCOUNTA(database,field,criteria)
4.DGET
从数据清单或数据库中提取符合指定条件的单个值。
DGET(database,field,criteria)
5.DMAX
返回数据清单或数据库的指定列中,满足给定条件单元格中的最大数值。
DMAX(database,field,criteria)
6.DMIN
返回数据清单或数据库的指定列中满足给定条件的单元格中的最小数字。
DMIN(database,field,criteria)
7.DPRODUCT
返回数据清单或数据库的指定列中,满足给定条件单元格中数值乘积。
DPRODUCT(database,field,criteria)
同上
8.DSTDEV
将列表或数据库的列中满足指定条件的数字作为一个样本,估算样本总体的标准偏差。
DSTDEV(database,field,criteria)
9.DSTDEVP
将数据清单或数据库的指定列中,满足给定条件单元格中的数字作为样本总体,计算总体的标准偏差。
DSTDEVP(database,field,criteria)
10.DSUM
返回数据清单或数据库的指定列中,满足给定条件单元格中的数字之和。
DSUM(database,field,criteria)
11.DVAR
将数据清单或数据库的指定列中满足给定条件单元格中的数字作为一个样本,估算样本总体的方差。
DVAR(database,field,criteria)
12.DVARP
将数据清单或数据库的指定列中满足给定条件单元格中的数字作为样本总体,计算总体的方差。
DVARP(database,field,criteria)
13.GETPIVOTDATA
返回存储在数据透视表报表中的数据。
如果报表中的汇总数据可见,则可以使用函数GETPIVOTDATA从数据透视表报表中检索汇总数据。
GETPIVOTDATA(pivot_table,name)
Data_field为包含要检索的数据的数据字段的名称(放在引号中)。
Pivot_table在数据透视表中对任何单元格、单元格区域或定义的单元格区域的引用,该信息用于决定哪个数据数据透视表包含要检索的数据。
Field1,Item1,Field2,Item2为1到14对用于描述检索数据的字段名和项名称,可以任意次序排列。
(二)日期与时间函数
1.DATE
返回代表特定日期的序列号。
DATE(year,month,day)
year为一到四位,根据使用的日期系统解释该参数。
默认情况下,ExcelforWindows使用1900日期系统,而ExcelforMacintosh使用1904日期系统。
Month代表每年中月份的数字。
如果所输入的月份大于12,将从指定年份的一月份执行加法运算。
Day代表在该月份中第几天的数字。
如果day大于该月份的最大天数时,将从指定月份的第一天开始往上累加。
注意:
Excel按顺序的序列号保存日期,这样就可以对其进行计算。
如果工作簿使用的是1900日期系统,则Excel会将1900年1月1日保存为序列号1。
同理,会将1998年1月1日保存为序列号35796,因为该日期距离1900年1月1日为35795天。
实例:
如果采用1900日期系统(Excel默认),则公式“=DATE(2001,1,1)”返回36892。
2.DATEVALUE
返回date_text所表示的日期的序列号。
该函数的主要用途是将文字表示的日期转换成一个序列号。
DATEVALUE(date_text)
Date_text是用Excel日期格式表示日期的文本。
在使用1900日期系统中,date_text必须是1900年1月1日到9999年12月31日之间的一个日期;
而在1904日期系统中,date_text必须是1904年1月1日到9999年12月31日之间的一个日期。
如果date_text超出上述范围,则函数DATEVALUE返回错误值#VALUE!
。
如果省略参数date_text中的年代,则函数DATEVALUE使用电脑系统内部时钟的当前年代,且date_text中的时间信息将被忽略。
公式“=DATEVALUE("
2001/3/5"
)”返回36955,DATEVALUE("
2-26"
)返回36948。
3.DAY
返回用序列号(整数1到31)表示的某日期的天数,用整数1到31表示。
DAY(serial_number)
Serial_number是要查找的天数日期,它有多种输入方式:
带引号的文本串(如"
1998/01/30"
)、序列号(如1900日期系统的35825表示的1998年1月30日),以及其他公式或函数的结果(如DATEVALUE("
1998/1/30"
))。
公式“=DAY("
2001/1/27"
)”返回27,=DAY(35825)返回30,=DAY(DATEVALUE("
2001/1/25"
))返回25。
4.DAYS360
按照一年360天的算法(每个月30天,一年共计12个月),返回两日期间相差的天数。
DAYS360(start_date,end_date,method)
Start_date和end_date是用于计算期间天数的起止日期。
如果start_date在end_date之后,则DAYS360将返回一个负数。
日期可以有多种输入方式:
带引号的文本串(例如:
)、序列号(例如:
如果使用1900日期系统,则35825表示1998年1月30日)或其他公式或函数的结果(例如,DATEVALUE("
Method是一个逻辑值,它指定了在计算中是采用欧洲方法还是美国方法。
若为FALSE或忽略,则采用美国方法(如果起始日期是一个月的31日,则等于同月的30日。
如果终止日期是一个月的31日,并且起始日期早于30日,则终止日期等于下一个月的1日,否则,终止日期等于本月的30日)。
若为TRUE则采用欧洲方法(无论是起始日期还是终止日期为一个月的31号,都将等于本月的30号)。
公式“=DAYS360("
1998/2/1"
,"
2001/2-1"
)”返回1080。
5.EDATE
返回指定日期(start_date)之前或之后指定月份的日期序列号。
EDATE(start_date,months)
Start_date参数代表开始日期,它有多种输入方式:
)、序列号(如35825表示1998年1月30日)或其他公式或函数的结果(例如:
DATEVALUE("
Months为在start_date之前或之后的月份数,未来日期用正数表示,过去日期用负数表示。
公式“=EDATE("
,2)”返回37016即2001年5月5日,=EDATE("
,-6)返回36774即2000年9月5日。
6.EOMONTH
返回start-date之前或之后指定月份中最后一天的序列号。
EOMONTH(start_date,months)
)、序列号(如1900日期系统中的35825)或其他公式或函数的结果(如DATEVALUE("
Month为start_date之前或之后的月份数,正数表示未来日期,负数表示过去日期。
公式“=EOMONTH("
2001/01/01"
,2)”返回36981即2001年3月31日,=EOMONTH("
,-6)返回36738即2000年7月31日。
7.HOUR
返回时间值的小时数。
即介于0(12:
00A.M.)到23(11:
00P.M.)之间的一个整数。
HOUR(serial_number)
Serial_number表示一个时间值,其中包含着要返回的小时数。
它有多种输入方式:
6:
45PM"
)、十进制数(如0.78125表示6:
45PM)或其他公式或函数的结果(如TIMEVALUE("
公式“=HOUR("
3:
30:
30PM"
)”返回15,=HOUR(0.5)返回12即12:
00:
00AM,=HOUR(29747.7)返回16。
8.MINUTE
返回时间值中的分钟,即介于0到59之间的一个整数。
MINUTE(serial_number)
Serial_number是一个时间值,其中包含着要查找的分钟数。
时间有多种输入方式:
)、十进制数(如0.78125表示6:
45PM)或其他公式或函数的结果(如TIMEVALUE("
公式“=MINUTE("
15:
00"
)”返回30,=MINUTE(0.06)返回26,=MINUTE(TIMEVALUE("
9:
))返回45。
9.MONTH
返回以序列号表示的日期中的月份,它是介于1(一月)和12(十二月)之间的整数。
MONTH(serial_number)
Serial_number表示一个日期值,其中包含着要查找的月份。
日期有多种输入方式:
)、序列号(如表示1998年1月30日的35825)或其他公式或函数的结果(如DATEVALUE("
))等。
公式“=MONTH("
2001/02/24"
)”返回2,=MONTH(35825)返回1,=MONTH(DATEVALUE("
2000/6/30"
))返回6。
10.NETWORKDAYS
返回参数start-data和end-data之间完整的工作日(不包括周末和专门指定的假期)数值。
NETWORKDAYS(start_date,end_date,holidays)
Start_date代表开始日期,End_date代表终止日;
Holidays是表示不在工作日历中的一个或多个日期所构成的可选区域,法定假日以及其他非法定假日。
此数据清单可以是包含日期的