Excel reference and inquiry functions 省编程了!!

1.ADDRESS

  用途:以文字形式返回对工作簿中某一单元格的引用。

  语法:ADDRESS(row_num,column_num,abs_num,a1,sheet_text)

  参数:Row_num是单元格引用中使用的行号;Column_num是单元格引用中使用的列标;Abs_num指明返回的引用类型(1或省略为绝对引用,2绝对行号、相对列标,3相对行号、绝对列标,4是相对引用);A1是一个逻辑值,它用来指明是以A1或R1C1返回引用样式。如果A1为TRUE或省略,函数ADDRESS返回A1样式的引用;如果A1为FALSE,函数ADDRESS返回R1C1样式的引用。 Sheet_text为一文本,指明作为外部引用的工作表的名称,如果省略sheet_text,则不使用任何工作表的名称。

  实例:公式“=ADDRESS(1,4,4,1)”返回D1。

  2.AREAS

  用途:返回引用中包含的区域个数。

  语法:AREAS(reference)。

  参数:Reference是对某一单元格或单元格区域的引用,也可以引用多个区域。

  注意:如果需要将几个引用指定为一个参数,则必须用括号括起来,以免Excel将逗号作为参数间的分隔符。

  实例:公式“=AREAS(a2:b4)”返回1,=AREAS((A1:A3,A4:A6,B4:B7,A16:A18))返回4。

  3.CHOOSE

  用途:可以根据给定的索引值,从多达29个待选参数中选出相应的值或操作。

  语法:CHOOSE(index_num,value1,value2,…)。

  参数:Index_num是用来指明待选参数序号的值,它必须是1到29之间的数字、或者是包含数字1到29的公式或单元格引用;value1,value2,…为1到29个数值参数,可以是数字、单元格,已定义的名称、公式、函数或文本。

  实例:公式“=CHOOSE(2,”电脑”,”爱好者”)返回“爱好者”。公式“=SUM(A1:CHOOSE(3,A10,A20,A30))”与公式“=SUM(A1:A30)”等价(因为CHOOSE(3,A10,A20,A30)返回A30)。

  4.COLUMN

  用途:返回给定引用的列标。

  语法:COLUMN(reference)。

  参数:Reference为需要得到其列标的单元格或单元格区域。如果省略reference,则假定函数COLUMN是对所在单元格的引用。如果reference为一个单元格区域,并且函数COLUMN作为水平数组输入,则COLUMN函数将reference中的列标以水平数组的形式返回。

  实例:公式“=COLUMN(A3)”返回1,=COLUMN(B3:C5)返回2。

  5.COLUMNS

  用途:返回数组或引用的列数。

  语法:COLUMNS(array)。

  参数:Array为需要得到其列数的数组、数组公式或对单元格区域的引用。

  实例:公式“=COLUMNS(B1:C4)”返回2,=COLUMNS({5,4;4,5})返回2。

  6.HLOOKUP

  用途:在表格或数值数组的首行查找指定的数值,并由此返回表格或数组当前列中指定行处的数值。

  语法:HLOOKUP(lookup_value,table_array,row_index_num,range_lookup)

  参数:Lookup_value是需要在数据表第一行中查找的数值,它可以是数值、引用或文字串;Table_array是需要在其中查找数据的数据表,可以使用对区域或区域名称的引用,Table_array的第一行的数值可以是文本、数字或逻辑值。Row_index_num 为table_array中待返回的匹配值的行序号。Range_lookup为一逻辑值,指明函数HLOOKUP查找时是精确匹配,还是近似匹配。

  实例:如果A1:B3区域存放的数据为34、23、68、69、92、36,则公式“=HLOOKUP(34,A1:B3,1,FALSE)返回34;=HLOOKUP(3,{1,2,3;”a”,”b”,”c”;”d”,”e”,”f”},2,TRUE)返回“c”。

  7.HYPERLINK

  用途:创建一个快捷方式,用以打开存储在网络服务器、Intranet(Internet)或本地硬盘的其它文件。

  语法:HYPERLINK(link_location,friendly_name)

  参数:Link_location是文件的路径和文件名,它还可以指向文档中的某个更为具体的位置,如Execl工作表或工作簿中特定的单元格或命名区域,或是指向Word文档中的书签。路径可以是存储在硬盘驱动器上的文件,或是Internet或Intranet上的URL路径;Friendly_name为单元格中显示的链接文字或数字,它用蓝色显示并带有下划线。如果省略了Friendly_name,单元格就将 link_location显示为链接。

  实例:HYPERLINK(“http://soft.yesky.com/”,”驱动之家”)会在工作表中显示文本“驱动之家”,单击它即可连接到“http://soft.yesky.com/”。公式“=HYPERLINK(“D:\README.TXT”,”说明文件”)”在工作表中建立一个的蓝色“说明文件”链接,单击它可以打开D盘上的README.TXT文件。

  8.INDEX

  用途:返回表格或区域中的数值或对数值的引用。函数INDEX()有两种形式:数组和引用。数组形式通常返回数值或数值数组;引用形式通常返回引用。

  语法:INDEX(array,row_num,column_num)返回数组中指定的单元格或单元格数组的数值。INDEX(reference,row_num,column_num,area_num)返回引用中指定单元格或单元格区域的引用。

  参数:Array为单元格区域或数组常数;Row_num为数组中某行的行序号,函数从该行返回数值。如果省略row_num,则必须有column_num;Column_num是数组中某列的列序号,函数从该列返回数值。如果省略column_num,则必须有 row_num。Reference是对一个或多个单元格区域的引用,如果为引用输入一个不连续的选定区域,必须用括号括起来。Area_num是选择引用中的一个区域,并返回该区域中row_num和column_num的交叉区域。选中或输入的第一个区域序号为1,第二个为2,以此类推。如果省略 area_num,则INDEX函数使用区域1。

  实例:如果A1=68、A2=96、A3=90,则公式“=INDEX(A1:A3,1,1)”返回68,=INDEX(A1:A3,1,1,1)返回68。

  9.INDIRECT

  用途:返回由文字串指定的引用。此函数立即对引用进行计算,并显示其内容。当需要更改公式中单元格的引用,而不更改公式本身,即可使用INDIRECT函数。

  语法:INDIRECT(ref_text,a1)。

  参数:Ref_text是对单元格的引用,此单元格可以包含A1样式的引用、R1C1样式的引用、定义为引用的名称或对文字串单元格的引用;A1为一逻辑值,指明包含在单元格ref_text中的引用的类型。如果a1为TRUE或省略,ref_text被解释为A1-样式的引用。如果a1为FALSE,ref_text被解释为R1C1-样式的引用。

  实例:如果单元格A1存放有文本B1,而B1单元格中存放了数值68.75,则公式“=INDIRECT($A$1)”返回68.75。

  10.LOOKUP

  用途:返回向量(单行区域或单列区域)或数组中的数值。该函数有两种语法形式:向量和数组,其向量形式是在单行区域或单列区域 (向量)中查找数值,然后返回第二个单行区域或单列区域中相同位置的数值;其数组形式在数组的第一行或第一列查找指定的数值,然后返回数组的最后一行或最后一列中相同位置的数值。

  语法1(向量形式):LOOKUP(lookup_value,lookup_vector,result_vector)

  语法2(数组形式):LOOKUP(lookup_value,array)。

  参数1(向量形式):Lookup_value为函数LOOKUP在第一个向量中所要查找的数值。Lookup_value可以为数字、文本、逻辑值或包含数值的名称或引用。Lookup_vector为只包含一行或一列的区域。Lookup_vector的数值可以为文本、数字或逻辑值。

  参数2(数组形式):Lookup_value为函数LOOKUP在数组中所要查找的数值。Lookup_value可以为数字、文本、逻辑值或包含数值的名称或引用。如果函数LOOKUP找不到lookup_value,则使用数组中小于或等于lookup_value的最大数值。Array 为包含文本、数字或逻辑值的单元格区域,它的值用于与lookup_value进行比较。

  注意:Lookup_vector的数值必须按升序排列,否则LOOKUP函数不能返回正确的结果,参数中的文本不区分大小写。

  实例:如果A1=68、A2=76、A3=85、A4=90,则公式“=LOOKUP(76,A1:A4)”返回2,=LOOKUP(“bump”,{“a”,1;”b”,2;”c”,3})返回2。

  11.MATCH

  用途:返回在指定方式下与指定数值匹配的数组中元素的相应位置。如果需要找出匹配元素的位置而不是匹配元素本身,则应该使用MATCH函数。

  语法:MATCH(lookup_value,lookup_array,match_type)。

  参数:Lookup_value为需要在数据表中查找的数值,它可以是数值(或数字、文本或逻辑值)、对数字、文本或逻辑值的单元格引用。Lookup_array是可能包含所要查找的数值的连续单元格区域,Lookup_array可以是数组或数组引用;Match_type为数字-1、0或1,它说明Excel如何在lookup_array中查找lookup_value。如果match_type为1,函数MATCH查找小于或等于lookup_value的最大数值。如果match_type为0,函数MATCH查找等于lookup_value的第一个数值。如果 match_type为-1,函数MATCH查找大于或等于lookup_value的最小数值。

  注意:MATCH函数返回lookup_array中目标值的位置,而不是数值本身。如果match_type为0且lookup_value为文本,lookup_value可以包含通配符(“*”和“?”)。星号可以匹配任何字符序列,问号可以匹配单个字符。

  实例:如果A1=68、A2=76、A3=85、A4=90,则公式“=MATCH(90,A1:A5,0)”返回3。

  12.OFFSET

  用途:以指定的引用为参照系,通过给定偏移量得到新的引用。返回的引用可以是一个单元格或单元格区域,并可以指定返回的行数或列数。

  语法:OFFSET(reference,rows,cols,height,width)。

  参数:Reference是作为偏移量参照系的引用区域,它必须是单元格或相连单元格区域的引用;Rows是相对于偏移量参照系的左上角单元格,上(下)偏移的行数。如果使用5作为参数Rows,则说明目标引用区域的左上角单元格比reference低5行。行数可为正数(代表在起始引用的下方)或负数(代表在起始引用的上方);Cols是相对于偏移量参照系的左上角单元格,左(右)偏移的列数。如果使用5作为参数Cols,则说明目标引用区域的左上角的单元格比reference靠右5列。列数可为正数(代表在起始引用的右边)或负数(代表在起始引用的左边);Height是要返回的引用区域的行数,Height必须为正数;Width是要返回的引用区域的列数,Width必须为正数。

  实例:如果A1=68、A2=76、A3=85、A4=90,则公式“=SUM(OFFSET(A1:A2,2,0,2,1))”返回177。

  13.ROW

  用途:返回给定引用的行号。

  语法:ROW(reference)。

  Reference为需要得到其行号的单元格或单元格区域。

  实例:公式“=ROW(A6)”返回6,如果在C5单元格中输入公式“=ROW()”,其计算结果为5。

  14.ROWS

  用途:返回引用或数组的行数。

  语法:ROWS(array)。

  参数:Array是需要得到其行数的数组、数组公式或对单元格区域的引用。

  实例:公式“=ROWS(A1:A9)”返回9,=ROWS({1,2,3;4,5,6;1,2,3})返回3。

  15.RTD

  用途:从支持COM自动化的程序中返回实时数据。

  语法:RTD(ProgID,server,topic1,[topic2],…)

  参数:ProgID已安装在本地计算机中,经过注册的COM自动化加载宏的ProgID名称,该名称用引号引起来。Server 是运行加载宏的服务器的名称。如果没有服务器,程序是在本地计算机上运行,那么该参数为空白。topic1,topic2,…为1到28个参数,这些参数放在一起代表一个唯一的实时数据。

  16.TRANSPOSE

  用途:返回区域的转置(所谓转置就是将数组的第一行作为新数组的第一列,数组的第二行作为新数组的第二列,以此类推)。

  语法:TRANSPOSE(array)。

  参数:Array是需要转置的数组或工作表中的单元格区域。

  实例:如果A1=68、A2=76、B1=85、B2=90,那么公式“{=TRANSPOSE(A1:B1)}”返回C1=56、D1=98、C2=90、D2=87。

  17.VLOOKUP

  用途:在表格或数值数组的首列查找指定的数值,并由此返回表格或数组当前行中指定列处的数值。当比较值位于数据表首列时,可以使用函数VLOOKUP代替函数HLOOKUP。

  语法:VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)

  参数:Lookup_value为需要在数据表第一列中查找的数值,它可以是数值、引用或文字串。Table_array为需要在其中查找数据的数据表,可以使用对区域或区域名称的引用。Col_index_num为table_array中待返回的匹配值的列序号。 Col_index_num为1时,返回table_array第一列中的数值;col_index_num为2,返回table_array第二列中的数值,以此类推。Range_lookup为一逻辑值,指明函数VLOOKUP返回时是精确匹配还是近似匹配。如果为TRUE或省略,则返回近似匹配值,也就是说,如果找不到精确匹配值,则返回小于lookup_value的最大数值;如果range_value为FALSE,函数VLOOKUP将返回精确匹配值。如果找不到,则返回错误值#N/A。

  实例:如果A1=23、A2=45、A3=50、A4=65,则公式“=VLOOKUP(50,A1:A4,1,TRUE)”返回50。

Advertisements

About yhtian

I am an academic researcher working on Offshore Geotechnical Engineering. My blog aims to write down some work related trivial things and tricks about software, programming. It is basically a memo for me to back up some thoughts and small details. But I am more than happy if someone would visit and discuss.
This entry was posted in Uncategorized. Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s