2024年3月25日发(作者:)

Excel公式和函数 引用函数

与Excel查找函数不同的是,引用函数中的参数主要是各种类型的引用,用户可以根据

不同的情况使用各种方法进行引用。如果需要引用的是单元格或者多个区域,则在函数中使

用参数Reference;如果需要得到的是数组或者是数组公式,则会使用参数Array。

1.ADDRESS函数

该函数将按照指定的行号和列标,建立文本类型的单元格地址。

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

其中,各参数的意义如下所示:

Row_num

Column_num

Abs_num

该参数表示在单元格引用中使用的行号。

该参数表示在单元格引用中使用的列标。

该参数指定返回的引用类型:当其值为1或者被省略时,ADDRESS函数返回的引用类型为绝对引用;

若其值为2时,返回的引用类型为绝对引用行;若其值为3,则返回绝对引用列;若其值为4,则返回的引

用类型为相对引用。

 A1

该参数用于指定引用样式的逻辑值。若参数A1的值为TRUE或者被省略,则ADDRESS函数将返回A1

样式的引用;若该参数的值为FALSE,函数则返回RICI样式的引用。

Sheet_text

该参数为一个文本,指定作为外部引用工作表的名称,若省略该参数,则不使用任何工作表名称。

例如,根据图6-9中的B2至C5单元格区域的工作表、行号以及列标信息,返回各种引

用结果。

选择B8单元格,并插入ADDRESS函数,设置参数Row_num为B3;参数Column_num

为B4;参数Abs_num为1;参数A1为TRUE;单击【确定】按钮,即可返回A1样式的绝对

引用,如图6-10所示。

然后,在B9和B10单元格中,分别输入“=ADDRESS(B3,B4,1,FALSE)”和

“=ADDRESS(B3,B4,2,TRUE,B5)”公式,即可返回R1C1样式的绝对引用和工作表名称的引用,

如图6-11所示。

设置

效果显示

效果显示

图6-10 A1样式的绝对引用 图6-11 R1C1样式和工作表名称引用

2.AREAS函数

该函数用于返回引用中所包含的区域个数,区域表示连续的单元格区域或某个单元格。

语法:AREAS (reference)

在AREAS函数中,仅需要Reference一个参数,它表示对某个单元格或单元格区域的引

用,也可以引用多个区域。如果需要将几个引用指定为一个参数,必须用括号将其括起来,

以免Excel将逗号作为参数间的分隔符。

例如,在“订单明细表”中,选择D14单元格,插入AREAS函数,并设置参数Reference

为D7,根据返回的结果可以得出,D7单元格引用中所含的区域个数为1,如图6-12所示。

输入

效果显示

图6-12 D7单元格中所含区域的个数

3.CHOOSE函数

该函数可以根据指定的索引值,从多达254个数值中选出相应的值。

语法:CHOOSE (index_num, value1, value2,...)

其中,参数Index_num表示用于指明待选参数序号的参数值。该参数的值必须为1-254

之间的数字,或者是包含数字1到254的公式或单元格引用;

参数Value1,value2,...为1到254个数值参数,CHOOSE函数将基于参数Index_num,从

中选择一个数值或一项要执行的操作。该参数可以是数字、单元格引用、定义名称、公式、

函数或者文本。

例如,在“订单明细表”中,选择D15单元格,在【编辑栏】中输入

“=SUM(D8:CHOOSE(4,D8,D9,D10,D11,D12))”公式,即可计算出D8至D11单元格区域的总

和,如图6-13所示。

输入

效果显示

图6-13 S02~S05订单的合计费用

在本公式中,首先使用CHOOSE函数,返回D8至D12单元格区域中的第4个值,即50

元(D11单元格)。然后,通过与SUM函数的嵌套使用,计算S02~S05订单产生的合计费

用。

使用CHOOSE函数时,需要注意以下几点:

如果参数Index_num的值为1,则CHOOSE函数返回Value1;如果其值为2,则CHOOSE函数

返回Value2,以此类推;

如果参数Index_num的值小于1或大于列表中最后一个值的序号,那么CHOOSE函数将返回错

误值#VALUE!;

如果参数Index_num的值为小数,则在使用前将被截尾取整;

如果参数Index_num为一个数组,则在计算CHOOSE函数时,将计算每一个值;

CHOOSE函数的数值参数不仅可以为单个数值,也可以为区域引用。

4.HYPERLINK函数

该函数可以创建一个超级链接(跳转),用于打开存储在网络服务器、Intranet或者

Internet中的文件。用户可以使用该函数创建几个相关工作表之间的链接,以便在需要的时

候进行查看。

语法:HYPERLINK (link_location, friendly_name)

其中,各参数的意义如下所示:

 Link_location

该参数表示要打开文档的路径和文件名称,此文档可以作为文本打开。参数Link_location还可以指向

文档中某个更为具体的位置,如Excel工作表或工作簿中特定的单元格或命名区域,或者是指向Word文档

中的书签;路径可以是存储在硬盘驱动器上的文件,或者是在Internet上的路径。

 Friendly_name

该参数为单元格中显示的跳转文本值或数字值。单元格的内容以蓝色字体并添加下划线的形式显示。

如果省略参数Friendly_name的设置,单元格将以link_location显示为跳转文本。

例如,在订单明细表中,若要想查看“图书目录”工作簿中已经销售的图书目录,可以

选择A16单元格,并插入HYPERLINK函数。然后,在【函数参数】对话框中,设置参数

Link_location为“F:Excel”;参数Friendly_name为“已销售图书目录”,即可在A16单元格

中创建超链接文本,如图6-14所示。

设置

效果显示

图6-14 创建链接

单击该链接文本,即可打开“图书目录”工作簿。若想选择该单元格而不跳转到超链

接的目标文件,可以单击该单元格并按住鼠标左键不放,当光标变成形状后释

提 示

放鼠标。

使用

HYPER

LINK函数创建超链接时,需要注意以下几点:

参数Link_location可以为括在引号中的文本字符串,或者是包含文本字符串链接的单元格。

如果在参数Link_location中指定的跳转不存在或不能访问,则当单击单元格时将出现错误信息的

提示框。

参数Friendly_name可以为数值、文本字符串、名称、包含跳转文本或数值的单元格。

如果参数Friendly_name 返回错误值(如#VALUE!),单元格将显示错误值以替代跳转文本。

5.INDEX函数

该参数可以返回列表或者单元格区域中的值以及值的引用。该函数有数组和引用两种语

法形式:数组形式返回表格或者数组中的元素值,此元素由行号和列标的索引值指定,当

INDEX函数的第一个参数为数组常量时,可以使用该形式;而引用形式用于返回指定的行和

列交叉位置的单元格引用。

语法:INDEX (array, row_num, column_num)

INDEX (reference, row_num, column_num, area_num)

其中,各参数的意义如下所示:

 Array

该参数为单元格区域或数组常量。

 Row_num

该参数表示数组中某行的行号,INDEX函数从该行返回数值,若省略参数Row_num,则必须有参数

Column_num。

Column_num

Reference

该参数表示数组中某列的列标,INDEX函数从该列返回数值,如果省略该参数,则必须有参数Row_num。

该参数表示对一个或多个单元格区域的引用。如果为引用输入一个不连续的区域,必须将其用括号括

起来;如果引用中的每个区域只包含一行或者一列,则相应的参数Row_num或者Column_num分别为可选

项。

 Area_num

该参数表示选择引用中的一个区域,并返回该区域中参数Row_num和Column_num的交叉区域。若

省略该参数的值,则INDEX函数将使用区域1。

例如,在“图书目录”工作表中,选择B36单元格,插入INDEX函数,并选择该函数

数组形式的参数。然后,在【函数参数】对话框中,设置参数Array为A2:C31;参数Row_num

为12;参数Column_num为2,单击【确定】按钮,即可返回相应的图书名称,如图6-15

所示。

效果显示

设置

图6-15 查询图书名称

6.OF

交叉位置的单元格数据。

FSET

提 示

函数

该函数能够以指定的引用为参照系,通过给定偏移量得到新的引用,OFFSET函数返回

的引用可以是一个单元格或单元格区域。

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

其中,各参数的意义如下所示:

在本公式中,INDEX函数返回的是在A2至C31单元格区域中,第12行与第2列

 Reference

该参数是作为偏移量参照系的引用区域。其必须为对单元格或相连单元格区域的引用,否则,OFFSET

函数将返回错误值#VALUE!。

 Rows

该参数表示相对于偏移量参照系的左上角单元格,上(下)偏移的行数。行数既可以为正数(代表在

起始引用的下方),也可以为负数(代表在起始引用的上方)。

 Cols

该参数表示相对于偏移量参照系的左上角单元格,左(右)偏移的列数。列数可以为正数(代表在起

始引用的右边)或者负数(代表在起始引用的左边)。

 Height

该参数表示高度,即所要返回的引用区域的行数,其值必须为正数。

 Width

该参数表示宽度,即所要返回的引用区域的列数,其值必须为正数。

例如,某公司领导每个月都需要从银行取一笔钱作为下属员工的工资,公司需要了解所

有员工的工资总额,但其统计过程时动态的。要求利用OFFSET函数,创建动态的求解过程。

在“员工工资表”中,选择D9单元格,在【编辑栏】中输入“=SUM(OFFSET(E3,,,ROW()

-ROW(E3)))”公式,单击【输入】按钮,即可得出所有员工的工资总额,如图6-16所示。

输入

效果显示

图6-16 所有员工的工资总额

在本例中,由于“=SUM(OFFSET(E3,,,ROW()-ROW(E3)))”公式中,实现了动态引用区域,

在这之中添加的数据都会被引用在该公式中。因此,在原始的员工工资表中添加新的员工工

资记录后,求和的数值将自动发生变化。

使用OFFSET函数时,还需要注意以下几点:

如果行数和列数偏移量超出工作表边缘,那么OFFSET函数将返回错误值#REF!。

如果省略参数Height或者Width,Excel将假设其高度或宽度与参数Reference的值相同。

OFFSET函数实际上并不移动任何单元格或更改选定区域,它只是返回一个引用。函数OFFSET

可用于任何需要将引用作为参数的函数。

另外,在查找和引用函数中,还有以下几种函数,其功能如表6-1所示:

表6-1 其他查找和引用函数功能

函数

COLUMN函数

COLUMNS函数

ROW函数

ROWS函数

INDIRECT函数

TRANSPOSE函数

语法

COLUMN (reference)

COLUMNS(array)

ROW(reference)

ROWS(array)

INDIRECT(ref_text,a1)

TRANSPOSE(array)

功能

返回给定引用的列标。

返回数组或引用的列数。

返回引用的行号。

返回引用或数组的行数。

返回由文本字符串指定的引用。此函数立即对引用

进行计算,并显示其内容。

返回转置单元格区域,即将一行单元格区域转置成

一列单元格区域,反之亦然。