Excel 计算行号:ROW函数

ROW函数用于返回引用的行号。其语法如下:


ROW(reference)

其中,reference参数为需要得到其行号的单元格或单元格区域。如果省略reference参数,则假定是对函数ROW所在单元格的引用。如果reference参数为一个单元格区域,并且函数ROW作为垂直数组输入,则函数ROW将reference参数的行号以垂直数组的形式返回。reference参数不能引用多个区域。下面通过实例详细讲解该函数的使用方法与技巧。

打开“ROW函数.xlsx”工作簿,切换至“Sheet1”工作表,本例中的原始数据如图16-59所示。要求根据工作表中的数据内容,返回引用的行号。具体操作步骤如下。

STEP01:选中A2单元格,在编辑栏中输入公式“=ROW()”,用于返回公式所在行的行号,输入完成后按“Enter”键返回计算结果,如图16-60所示。

图16-59 原始数据

返回公式所在行的行号

图16-60 返回公式所在行的行号

STEP02:选中A3单元格,在编辑栏中输入公式“=ROW(D19)”,用于返回引用所在行的行号,输入完成后按“Enter”键返回计算结果,如图16-61所示。

返回引用所在行的行号

图16-61 返回引用所在行的行号

Excel 计算指定的引用:INDIRECT函数

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


INDIRECT(ref_text,a1)

其中,ref_text参数为对单元格的引用,此单元格可以包含A1样式的引用、R1C1样式的引用、定义为引用的名称或对文本字符串单元格的引用。a1为一逻辑值,指明包含在单元格ref_text中的引用的类型。下面通过实例详细讲解该函数的使用方法与技巧。

打开“INDIRECT函数.xlsx”工作簿,切换至“Sheet1”工作表,本例中的原始数据如图16-54所示。要求根据工作表中的数据内容,返回由文本字符串指定的引用。具体操作步骤如下。

图16-54 原始数据

STEP01:选中A7单元格,在编辑栏中输入公式“=INDIRECT($A$2)”,用于返回A2单元格中的引用值,输入完成后按“Enter”键返回计算结果,如图16-55所示。

STEP02:选中A8单元格,在编辑栏中输入公式“=INDIRECT($A$3)”,用于返回A3单元格中的引用值,输入完成后按“Enter”键返回计算结果,如图16-56所示。

图16-55 返回单元格A2的引用值

图16-56 返回A8单元格中的引用值

STEP03:选中A9单元格,在编辑栏中输入公式“=INDIRECT($A$4)”,用于返回A4单元格中的引用值,如果B4单元格有定义名“Beijing”,则返回定义名的值(2008),输入完成后按“Enter”键返回计算结果,如图16-57所示。

STEP04:选中A10单元格,在编辑栏中输入公式“=INDIRECT(“B”&$A$5)”,用于返回A5单元格中的引用值,输入完成后按“Enter”键返回计算结果,如图16-58所示。

图16-57 返回A4单元格中的引用值

图16-58 返回A5单元格中的引用值

Excel 返回区域值或值引用:INDEX函数

INDEX函数用于返回表或区域中的值或值的引用,它两种形式:数组形式和引用形式。

数组形式

返回表格或数组中的元素值,此元素由行序号和列序号的索引值给定。当函数INDEX的第1个参数为数组常量时,使用数组形式。其语法如下:


INDEX(array,row_num,column_num)

其中,array参数为单元格区域或数组常量。如果数组只包含一行或一列,则相对应的参数row_num参数或column_num参数为可选参数。如果数组有多行和多列,但只使用row_num参数或column_num参数,函数INDEX返回数组中的整行或整列,且返回值也为数组。row_num参数为数组中某行的行号,函数从该行返回数值。如果省略row_num参数,则必须有column_num参数。column_num参数为数组中某列的列标,函数从该列返回数值。如果省略column_num参数,则必须有row_num参数。下面通过实例详细讲解该函数的使用方法与技巧。

打开“INDEX.xlsx”工作簿,切换至“Sheet1”工作表,本例中的原始数据如图16-46所示。要求根据工作表中的数据内容,返回表格或数组中的元素值。具体操作步骤如下。

STEP01:选中A5单元格,在编辑栏中输入公式“=INDEX(A2:B3,2,2)”,用于返回位于区域中第2行和第2列交叉处的数值(沙和尚),输入完成后按“Enter”键返回计算结果,如图16-47所示。

图16-46 原始数据

图16-47 A5单元格返回结果

STEP02:选中A6单元格,在编辑栏中输入公式“=INDEX(A2:B3,2,1)”,用于返回位于区域中第2行和第1列交叉处的数值(唐三藏),输入完成后按“Enter”键返回计算结果,如图16-48所示。

引用形式

返回指定的行与列交叉处的单元格引用。如果引用由不连续的选定区域组成,可以选择某一选定区域。其语法如下:


INDEX(reference,row_num,column_num,area_num)

其中,reference参数为对一个或多个单元格区域的引用。如果为引用输入一个不连续的区域,必须将其用括号括起来。如果引用中的每个区域只包含一行或一列,则相应的参数row_num参数或column_num参数分别为可选项。例如,对于单行的引用,可以使用函数INDEX(reference,,column_num)。

row_num参数为引用中某行的行号,函数从该行返回一个引用。column_num参数为引用中某列的列标,函数从该列返回一个引用。area_num参数为选择引用中的一个区域,返回该区域中row_num参数和column_num参数的交叉区域。选中或输入的第1个区域序号为1,第2个为2,依此类推。如果省略area_num参数,则函数INDEX使用区域1。

例如,如果引用描述的单元格为(A1:C4,D1:E4,F1:H4),则area_num 1为区域A1:C4,area_num 2为区域D1:E4,而area_num 3为区域F1:H4。下面通过实例详细讲解该函数的使用方法与技巧。

打开“INDEX函数.xlsx”工作簿,切换至“Sheet2”工作表,本例中的原始数据如图16-49所示。要求根据工作表中的数据内容,返回指定的行与列交叉处的单元格引用。具体操作步骤如下。

图16-48 A6单元格返回结果

图16-49 原始数据

STEP01:选中A12单元格,在编辑栏中输入公式“=INDEX(A2:C6,2,3)”,用于返回区域A2:C6中第2行和第3列的交叉处,即C3单元格的内容,输入完成后按“Enter”键返回计算结果,如图16-50所示。

STEP02:选中A13单元格,在编辑栏中输入公式“=INDEX((A1:C6,A7:C10),2,2,2)”,用于返回第2个区域A8:C11中第2行和第2列的交叉处,即B8单元格的内容,输入完成后按“Enter”键返回计算结果,如图16-51所示。

图16-50 A12单元格返回结果

图16-51 A13单元格返回结果

STEP03:选中A14单元格,在编辑栏中输入公式“=SUM(INDEX(A1:C10,0,3,1))”,用于对第1个区域A1:C10中的第3列求和,即对C1:C10求和,输入完成后按“Enter”键返回计算结果,如图16-52所示。

STEP04:选中A15单元格,在编辑栏中输入公式“=SUM(B2:INDEX(A2:C6,5,2))”,用于返回以B2单元格开始到A2:C6单元格区域中第5行和第2列交叉处结束的单元格区域的和,即B2:B6单元格区域的和,输入完成后按“Enter”键返回计算结果,如图16-53所示。

图16-52 A14单元格返回结果

图16-53 A15单元格返回结果

Excel 计算数组或引用列数:COLUMNS函数

COLUMNS函数用于返回数组或引用的列数。其语法如下:


COLUMNS(array)

其中,array参数为需要得到其列数的数组或数组公式,或对单元格区域的引用。将reference参数中的列标以水平数组的形式返回。reference参数不能引用多个区域。下面通过实例详细讲解该函数的使用方法与技巧。

打开“COLUMNS函数.xlsx”工作簿,切换至“Sheet1”工作表,本例中的原始数据如图16-43所示。要求根据工作表中的数据内容,返回数组或引用的列数。具体操作步骤如下。

图16-43 原始数据

STEP01:选中A2单元格,在编辑栏中输入公式“=COLUMNS(A1:D5)”,用于返回引用中的列数,输入完成后按“Enter”键返回计算结果,如图16-44所示。

STEP02:选中A3单元格,在编辑栏中输入公式“=COLUMNS({1,2,3,4;4,5,6,7;5,6,7,8})”,用于返回数组常量中的列数(3),输入完成后按“Enter”键返回计算结果,如图16-45所示。

图16-44 返回引用中的列数

图16-45 返回数组常量中的列数

Excel 计算给定引用列标:COLUMN函数

COLUMN函数用于返回给定引用的列标。其语法如下:


COLUMN(reference)

其中,reference参数为需要得到其列标的单元格或单元格区域。如果省略reference,则假定为是对函数COLUMN所在单元格的引用。如果reference参数为一个单元格区域,并且函数COLUMN作为水平数组输入,则函数COLUMN将reference参数中的列标以水平数组的形式返回。reference参数不能引用多个区域。下面通过实例详细讲解该函数的使用方法与技巧。

打开“COLUMN函数.xlsx”工作簿,切换至“Sheet1”工作表,本例中的原始数据如图16-40所示。要求根据工作表中的数据内容,返回给定引用的列标。具体操作步骤如下。

STEP01:选中A2单元格,在编辑栏中输入公式“=COLUMN()”,用于返回公式所在列的列标,输入完成后按“Enter”键返回计算结果,如图16-41所示。

图16-40 原始数据

STEP02:选中A3单元格,在编辑栏中输入公式“=COLUMN(B15)”,用于返回B15的列标,输入完成后按“Enter”键返回计算结果,如图16-42所示。

图16-41 计算公式所在列

图16-42 计算引用的列

Excel 计算引用区域个数:AREAS函数

AREAS函数用于返回引用中包含的区域个数,区域表示连续的单元格区域或某个单元格。其语法如下:


AREAS(reference)

其中,reference参数表示对某个单元格或单元格区域的引用,也可以引用多个区域。如果需要将几个引用指定为一个参数,则必须用括号括起来,以免Excel将逗号作为参数间的分隔符。下面通过实例详细讲解该函数的使用方法与技巧。

打开“AREAS函数.xlsx”工作簿,切换至“Sheet1”工作表,本例中的原始数据如图16-36所示。要求根据工作表中的数据内容,返回引用中包含的区域个数。具体操作步骤如下。

STEP01:选中A2单元格,在编辑栏中输入公式“=AREAS(B1:D5)”,用来计算引用中包含的区域个数,输入完成后按“Enter”键返回,即可得出计算结果为1,如图16-37所示。

图16-36 原始数据

图16-37 A2单元格计算结果

STEP02:选中A3单元格,在编辑栏中输入公式“=AREAS((B1:D5,E5,F6:I9,G6))”,用来计算引用中包含的区域个数,输入完成后按“Enter”键返回,即可得出计算结果为4,如图16-38所示。

STEP03:选中A4单元格,在编辑栏中输入公式“=AREAS(B1:D5 B2)”,用来计算引用中包含的区域个数,输入完成后按“Enter”键返回,即可得出计算结果为1,如图16-39所示。

图16-38 A3单元格返回结果

图16-39 A4单元格返回结果

Excel 调整引用:OFFSET函数实例图解

OFFSET函数的功能是以指定的引用为参照系,通过给定偏移量得到新的引用。返回的引用可以为一个单元格或单元格区域,并可以指定返回的行数或列数。其语法如下:


OFFSET(reference,rows,cols,height,width)

其中,reference参数作为偏移量参照系的引用区域。rows参数为相对于偏移量参照系的左上角单元格,上(下)偏移的行数。cols参数为相对于偏移量参照系的左上角单元格,左(右)偏移的列数。height参数为高度,即所要返回的引用区域的行数,必须为正数。width参数为宽度,即所要返回的引用区域的列数,必须为正数。下面通过实例详细讲解该函数的使用方法与技巧。

打开“OFFSET函数.xlsx”工作簿,切换至“Sheet1”工作表,本例中的原始数据如图16-32所示。要求根据工作表中的数据内容,以指定的引用为参照系,通过给定偏移量得到新的引用。具体操作步骤如下。

STEP01:选中A2单元格,在编辑栏中输入公式“=OFFSET(B2,2,3,1,1)”,用于显示E4单元格中的值,输入完成后按“Enter”键返回计算结果,如图16-33所示。

图16-32 原始数据

图16-33 A2单元格返回结果

STEP02:选中A3单元格,在编辑栏中输入公式“=SUM(OFFSET(C3:E5,-2,0,3,3))”,用于对C1:E3数据区域进行求和,输入完成后按“Enter”键返回计算结果,如图16-34所示。

STEP03:选中A4单元格,在编辑栏中输入公式“=OFFSET(C3:E5,0,-3,3,3)”,输入完成后按“Enter”键返回计算结果,因为引用区域不在工作表中,工作表中会显示计算结果为错误值“#REF!”,如图16-35所示。

图16-34 A3单元格返回结果

图16-35 A4单元格返回结果

Excel 返回单元格地址引用值:ADDRESS函数

ADDRESS函数用于按照给定的行号和列标,建立文本类型的单元格地址。其语法如下:


ADDRESS(row_num,column_num,abs_num,a1,sheet_text)

其中,row_num参数表示在单元格引用中使用的行号,column_num参数表示在单元格引用中使用的列标,abs_num参数用于指定返回的引用类型,其返回的引用类型如表16-1所示。

a1参数为用于指定A1或R1C1引用样式的逻辑值。如果a1为TRUE或省略,函数ADDRESS返回A1样式的引用;如果a1为FALSE,函数ADDRESS返回R1C1样式的引用。

表16-1 abs_num参数返回的引用类型

abs_num参数返回的引用类型

sheet_text参数为一文本,用于指定作为外部引用的工作表的名称,如果省略sheet_text,则不使用任何工作表名。下面通过实例详细讲解该函数的使用方法与技巧。

打开“ADDRESS函数.xlsx”工作簿,切换至“Sheet1”工作表,本例中的原始数据如图16-26所示。要求根据工作表中的数据内容,以文本形式返回单元格地址引用值。具体操作步骤如下。

STEP01:选中A2单元格,在编辑栏中输入公式“=ADDRESS(6,8)”,用于返回绝对引用($H$6),输入完成后按“Enter”键返回计算结果,如图16-27所示。

图16-26 原始数据

图16-27 A2单元格返回结果

STEP02:选中A3单元格,在编辑栏中输入公式“=ADDRESS(6,8,2)”,用于返回绝对行号,相对列标(H$6),输入完成后按“Enter”键返回计算结果,如图16-28所示。

STEP03:选中A4单元格,在编辑栏中输入公式“=ADDRESS(6,8,2,FALSE)”,用于返回在R1C1引用样式中的绝对行号,相对列标(R6C[8]),输入完成后按“Enter”键返回计算结果,如图16-29所示。

图16-28 A3单元格返回结果

A5单元格返回结果

图16-29 A4单元格返回结果

STEP04:选中A5单元格,在编辑栏中输入公式“=ADDRESS(6,8,1,FALSE,”[Book1]Sheet1″)”,用于返回对其他工作簿或工作表的绝对引用([Book1]Sheet1!R6C8),输入完成后按“Enter”键返回计算结果,如图16-30所示。

STEP05:选中A6单元格,在编辑栏中输入公式“=ADDRESS(6,8,1,FALSE,”销售报表”)”,用于返回对其他工作表的绝对引用(’销售报表’!R6C8)),输入完成后按“Enter”键返回计算结果,如图16-31所示。

图16-30 A5单元格返回结果

图16-31 A6单元格返回结果

Excel选择参数列表数值:CHOOSE函数

CHOOSE函数使用index_num返回数值参数列表中的数值。使用CHOOSE函数可以根据索引号从最多254个数值中选择一个。例如,如果value1到value7表示一周的7天,当将1到7之间的数字用作index_num时,则CHOOSE返回其中的某一天。其语法如下:


CHOOSE(index_num,value1,value2,...)

其中,index_num参数用于指定所选定的值参数。参数value1、value2……为1~254个数值参数,函数CHOOSE基于index_num,从中选择一个数值或一项要执行的操作。参数可以为数字、单元格引用、定义名称、公式、函数或文本。下面通过实例详细讲解该函数的使用方法与技巧。

图16-23 原始数据

打开“CHOOSE函数.xlsx”工作簿,切换至“Sheet1”工作表,本例中的原始数据如图16-23所示。要求根据工作表中的数据内容,返回数值参数列表中的数值。具体操作步骤如下。

STEP01:选中A7单元格,在编辑栏中输入公式“=CHOOSE(4,A2,A3,A4,A5)”,用于返回第4个参数A5的值(完成),输入完成后按“Enter”键返回计算结果,如图16-24所示。

STEP02:选中A8单元格,在编辑栏中输入公式“=CHOOSE(2,B2,B3,B4,B5)”,用于返回第2个参数B3的值(李四),输入完成后按“Enter”键返回计算结果,如图16-25所示。

图16-24 A7单元格返回结果

图16-25 A8单元格返回结果

index_num参数必须为1~254的数字,或者是包含数字1~254的公式或单元格引用。如果index_num参数为1,函数CHOOSE返回value1;如果为2,函数CHOOSE返回value2,依此类推。如果index_num参数小于1或大于列表中最后一个值的序号,函数CHOOSE返回错误值“#VALUE!”。如果index_num参数为小数,则在使用前将被截尾取整。如果index_num参数为一个数组,则在计算函数CHOOSE时计算每一个值。函数CHOOSE的数值参数不仅可以为单个数值,也可以为区域引用。例如,下面的公式:


=SUM(CHOOSE(2,A1:A10,B1:B10,C1:C10))

相当于:


=SUM(B1:B10)

然后基于B1:B10单元格区域中的数值返回值。

函数CHOOSE先被计算,返回引用B1:B10单元格区域,然后函数SUM用B1:B10单元格区域进行求和计算。即函数CHOOSE的结果是函数SUM的参数。

Excel竖直查找:VLOOKUP函数实例图解

VLOOKUP函数用于在表格数组的首列查找指定的值,并由此返回表格数组当前行中其他列的值,VLOOKUP中的V表示垂直方向。当比较值位于需要查找的数据左边的一列时,可以使用VLOOKUP而不是HLOOKUP。其语法如下:


VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)

其中,lookup_value参数为需要在表格数组第1列中查找的数值。lookup_value可以为数值或引用。table_array参数为两列或多列数据。col_index_num参数为table_array中待返回的匹配值的列序号。range_lookup参数为逻辑值,指定希望VLOOKUP查找精确的匹配值还是近似匹配值。下面通过实例详细讲解该函数的使用方法与技巧。

打开“VLOOKUP.xlsx”工作簿,切换至“Sheet1”工作表,本例中的原始数据如图16-19所示。要求根据工作表中的数据内容,实现竖直查找。具体的操作步骤如下。

STEP01:选中B10单元格,在编辑栏中输入公式“=VLOOKUP(A10,$A$2:$C$6,2,FALSE)”,用于在A2:C6单元格区域中根据A10单元格中输入的姓名查找对应的职务,输入完成后按“Enter”键返回计算结果,如图16-20所示。

图16-19 原始数据

图16-20 查找职务

STEP02:选中C10单元格,在编辑栏中输入公式“=VLOOKUP(A10,$A$2:$C$6,3,FALSE)”,用于在A2:C6单元格区域中根据A10单元格中输入的姓名查找对应的出生日期,输入完成后按“Enter”键返回计算结果,如图16-21所示。

STEP03:在A10单元格中输入一个员工姓名,例如“李靖”,在B10和C10单元格中就会显示出相应的结果,如图16-22所示。

图16-21 查找出生日期

图16-22 输入员工姓名