二、函数速查一览
(一)数据库函数
1.DAVERAGE
用途:返回数据库或数据清单中满足指定条件的列中数值的平均值。
语法:DAVERAGE(database,field,criteria)
参数:Database构成列表或数据库的单元格区域。Field指定函数所使用的数据列。Criteria为一组包含给定条件的单元格区域。
2.DCOUNT
用途:返回数据库或数据清单的指定字段中,满足给定条件并且包含数字的单元格数目。
语法:DCOUNT(database,field,criteria)
参数:Database构成列表或数据库的单元格区域。Field指定函数所使用的数据列。Criteria为一组包含给定条件的单元格区域。
3.DCOUNTA
用途:返回数据库或数据清单指定字段中满足给定条件的非空单元格数目。
语法:DCOUNTA(database,field,criteria)
参数:Database构成列表或数据库的单元格区域。Field指定函数所使用的数据列。Criteria为一组包含给定条件的单元格区域。
4.DGET
用途:从数据清单或数据库中提取符合指定条件的单个值。
语法:DGET(database,field,criteria)
参数:Database构成列表或数据库的单元格区域。Field指定函数所使用的数据列。Criteria为一组包含给定条件的单元格区域。
5.DMAX
用途:返回数据清单或数据库的指定列中,满足给定条件单元格中的最大数值。
语法:DMAX(database,field,criteria)
参数:Database构成列表或数据库的单元格区域。Field指定函数所使用的数据列。Criteria为一组包含给定条件的单元格区域。
6.DMIN
用途:返回数据清单或数据库的指定列中满足给定条件的单元格中的最小数字。
语法:DMIN(database,field,criteria)
参数: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为一到四位,根据使用的日期系统解释该参数。Month代表每年中月份的数字。如果所输入的月份大于12,将从指定年份的一月份执行加法运算。Day代表在该月份中第几天的数字。如果 day 大于该月份的最大天数时,将从指定月份的第一天开始往上累加。
实例:如果采用1900日期系统(Excel默认),则公式“=DATE(2001,1,1)”返回36892。
2.DATEVALUE
用途:返回date_text所表示的日期的序列号。该函数的主要用途是将文字表示的日期转换成一个序列号。
语法:DATEVALUE(date_text)
参数:Date_text是用Excel日期格式表示日期的文本。如果省略参数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是要查找的天数日期,
实例:公式“=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将返回一个负数。 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参数代表开始日期。Months 为在start_date之前或之后的月份数,未来日期用正数表示,过去日期用负数表示。
实例:公式“=EDATE("2001/3/5",2)”返回37016即2001年5月5日,=EDATE("2001/3/5",-6)返回36774即2000年9月5日。
6.EOMONTH
用途:返回start-date之前或之后指定月份中最后一天的序列号。
语法:EOMONTH(start_date,months)
参数:Start_date参数代表开始日期。Month为start_date之前或之后的月份数,正数表示未来日期,负数表示过去日期。
实例:公式“=EOMONTH("2001/01/01",2)”返回36981即2001年3月31日,=EOMONTH("2001/01/01",-6)返回36738即2000年7月31日。
7.HOUR
用途:返回时间值的小时数。即介于0(12:00 A.M.)到23(11:00 P.M.) 之间的一个整数。
语法:HOUR(serial_number)
参数:Serial_number表示一个时间值,其中包含着要返回的小时数。
实例:公式“=HOUR("3:30:30 PM")”返回15,=HOUR(0.5)返回12即12:00:00 AM,=HOUR(29747.7)返回16。
8.MINUTE
用途:返回时间值中的分钟,即介于0到59之间的一个整数。
语法:MINUTE(serial_number)
参数:Serial_number是一个时间值,
实例:公式“=MINUTE("15:30:00")”返回30,=MINUTE(0.06)返回26,=MINUTE(TIMEVALUE("9:45 PM"))返回45。
9.MONTH
用途:返回以序列号表示的日期中的月份,它是介于 1(一月)和12(十二月)之间的整数。
语法:MONTH(serial_number)
参数:Serial_number表示一个日期值,其中包含着要查找的月份。
实例:公式“=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是表示不在工作日历中的一个或多个日期所构成的可选区域,法定假日以及其他非法定假日。
注意:该函数只有加载“分析工具库”以后方能使用。
11.NOW
用途:返回当前日期和时间所对应的序列号。
语法:NOW()
参数:无
实例:如果正在使用的是1900日期系统,而且计算机的内部时钟为 2001-1-28 12:53,则公式“=NOW()”返回36919.54。
12.SECOND
用途:返回时间值的秒数(为0至59之间的一个整数)。
语法:SECOND(serial_number)
参数:Serial_number表示一个时间值,其中包含要查找的秒数。关于时间的输入方式见上文的有关内容。
实例:公式“=SECOND("3:30:26 PM")”返回26,=SECOND(0.016)返回2。
13.TIME
用途:返回某一特定时间的小数值,它返回的小数值从0到 0.99999999之间,代表0:00:00(12:00:00 A.M)到23:59:59(11:59:59 P.M) 之间的时间。
语法:TIME(hour,minute,second)
参数:Hour是0到23之间的数,代表小时;Minute是0到59之间的数,代表分;Second是0到59之间的数,代表秒。
实例:公式“=TIME(12,10,30)”返回序列号0.51,等价于12:10:30 PM。=TIME(9,30,10)返回序列号0.40,等价于9:30:10 AM。=TEXT(TIME(23,18,14),"h:mm:ss AM/PM")返回“11:18:14 PM”。
14.TIMEVALUE
用途:返回用文本串表示的时间小数值。该小数值为从 0 到 0.999999999 的数值,代表从 0:00:00 (12:00:00 AM) 到 23:59:59 (11:59:59 PM) 之间的时间。
语法:TIMEVALUE(time_text)
参数:Time_text是一个用Excel 时间格式表示时间的文本串(如"6:45 PM"和"18:45"等)。
实例:公式“=TIMEVALUE("3:30 AM")”返回0.145833333,=TIMEVALUE("2001/1/26 6:35 AM")返回0.274305556。
15.TODAY
用途:返回系统当前日期的序列号。
参数:无
语法:TODAY()
实例:公式“=TODAY()”返回2001-8-28(执行公式时的系统时间)。
16.WEEKDAY
用途:返回某日期的星期数。在默认情况下,它的值为1(星期天)到7(星期六)之间的一个整数。
语法:WEEKDAY(serial_number,return_type)
参数:Serial_number是要返回日期数的日期。Return_type为确定返回值类型的数字,数字1或省略则1至7代表星期天到数星期六,数字2则1至7代表星期一到星期天,数字3则0至6代表星期一到星期天。
实例:公式“=WEEKDAY("2001/8/28",2)”返回2(星期二),=WEEKDAY("2003/02/23",3)返回6(星期日)。
17.WEEKNUM
用途:返回一个数字,该数字代表一年中的第几周。
语法:WEEKNUM(serial_num,return_type)
参数:Serial_num代表一周中的日期。应使用DATE 函数输入日期,或者将日期作为其他公式或函数的结果输入。Return_type为一数字,确定星期计算从哪一天开始。默认值为 1。
18.WORKDAY
用途:返回某日期(起始日期)之前或之后相隔指定工作日(不包括周末和专门指定的假日)的某一日期的值,并扣除周末或假日。
语法:WORKDAY(start_date,days,holidays)
参数:Start_date为开始日期;Days为Start_date之前或之后不含周末及节假日的天数;Days是正值将产生未来日期、负值产生过去日期;Holidays为可选的数据清单,表示需要从工作日历中排除的日期值(如法定假日或非法定假日)。此清单可以是包含日期的单元格区域,也可以是由代表日期的序列号所构成的数组常量。
19.YEAR
用途:返回某日期的年份。其结果为1900到9999之间的一个整数。
语法:YEAR(serial_number)
参数:Serial_number是一个日期值,其中包含要查找的年份。
实例:公式“=YEAR("2000/8/6")返回2000”,=YEAR("2003/05/01")返回2003,=YEAR(35825)返回1998。
20.YEARFRAC
用途:返回start_date和end_date之间的天数占全年天数的百分比。
语法:YEARFRAC(start_date,end_date,basis)
参数:Start_date表示开始日期,End_date代表结束日期。Basis表示日计数基准类型,其中0或省略为US(NASD)30/360,1实际天数/实际天数,2实际天数/360,3实际天数/365,4欧洲30/360。
实例:公式“=YEARFRAC("2001/01/31","2001/06/30",0)”返回0.416666667,YEARFRAC("2001/01/25","2001/09/27")返回0.67222。
(三)外部函数
1.EUROCONVERT
用途:将数字转换为欧元形式,将数字由欧元形式转换为欧盟成员国货币形式,或利用欧元作为中间货币将数字由某一欧盟成员国货币转化为另一欧盟成员国货币的形式(三角转换关系)。
语法:EUROCONVERT(number,source,target,full_precision,triangulation_precision)
参数:Number为要转换的货币值,或对包含该值的单元格的引用。Source是由三个字母组成的字符串,或对包含字符串的单元格的引用,该字符串对应于源货币的ISO代码。EUROCONVERT函数中可以使用下列货币代码:
国家/地区基本货币单位ISO代码
比利时法郎BEF
卢森堡法郎LUF
德国德国马克DEM
西班牙西班牙比塞塔ESP
法国法郎FRF
爱尔兰爱尔兰磅IEP
意大利里拉ITL
荷兰荷兰盾NLG
奥地利奥地利先令ATS
葡萄牙埃斯库多PTE
芬兰芬兰马克FIM
希腊德拉克马GRD
欧盟成员国欧元EUR
2.SQL.REQUEST
用途:与外部数据源连接,从工作表运行查询,然后 SQL.REQUEST 将查询结果以数组的形式返回,而无需进行宏编程。
语法:SQL.REQUEST(connection_string,output_ref,driver_prompt,query_text,col_names_logical)
参数:Connection_string提供信息,如数据源名称、用户ID和密码等。Output_ref对用于存放完整的连接字符串的单元格的引用。Driver_prompt指定驱动程序对话框何时显示以及何种选项可用。Column_names_logical指示是否将列名作为结果的第一行返回。如果要将列名作为结果的第一行返回,请将该参数设置为TRUE。如果不需要将列名返回,则设置为FALSE。如果省略column_names_logical,则SQL.REQUEST函数不返回列名。