在Excel范围内查找文本并返回单元格参考(3种方法)

  • Share This
Hugh West

在本教程中,我将写出如何 查找文本 在一个 Excel范围 返回持有该文本的单元格的引用 此外,我还将展示几种方法,以便你的要求可能与任何一种方法相匹配。

但在进入主要讨论之前,我想先讨论一下我将要使用的函数。

下载工作文件

这是我用来制作本教程的Excel文件。 下载并跟随我一起学习。

查找范围内的文本并返回单元格引用.xlsx

前提讨论

对于已经大量使用以下Excel函数的人来说,这一部分是可选的。

  • INDEX()
  • MATCH()
  • CELL()
  • 和OFFSET()

# 在Excel中的INDEX函数

INDEX函数 返回一个给定范围内特定行和列的交叉点上的单元格的值或引用。

INDEX函数的语法。

INDEX(array, row_num, [column_num])

INDEX(reference, row_num, [column_num], [area_num] )

请看下面的图片。

计算公式的解释

例1:

你可能会发现例1(还有例2)有点难以理解。 这实际上是一个 Excel数组公式 .

  • 首先,选择单元格 C16 然后写下以下公式。
{=index(b4:d9,2,)}。

  • 然后我按下了 ctrl+shift+enter 来输入数组公式。

这个公式究竟是如何运作的?

  • 这里,数组部分的 索引 功能是 B4:D9 .其 第2次 行是指 B5:D5 行。
  • 由于列号是空的,所以 索引 函数返回整个 第2次 行。

例2

{=INDEX((B4:D9,F4:H9),2,,2)}

  • 由于 索引 函数的引用,有 这里的范围。 B4:D9 F4:H9。
  • 行号是 2 没有指定列号。 因此,所有的值都在 第2次 行将被返回。
  • 范围 F4:H9 被索引函数使用,因为区域编号是 2.

例3

=index(b4:b9,3,)

这是一个非常简单的 索引 公式。 第三届 阵列的值 B4:B9 是由这个公式返回的。

例4

=index(b4:d9,2,3)

该公式返回交集值 第2次 行和 第三届 列的范围 B4:D9 .

# 在Excel中的MATCH函数

MATCH函数 返回一个值在一个数组中的位置。

MATCH函数的语法。

=MATCH(lookup_value, lookup_array, [match_type])

  • 现在,写下以下公式,在 C17 箱子。
=match(c14,b4:b9,0)

这个公式是如何运作的?

  • 单元格的值 C14 谷歌 因此,我们的查询值是 谷歌。
  • 在单元格范围内 B4:B9 ,谷歌的立场是 第六届
  • 因此,该公式返回 6.

# #Excel中的CELL函数

CELL功能 根据工作表的阅读顺序,以引用的方式返回第一个单元格的格式、位置或内容的信息。

Excel CELL函数的语法

=CELL(info_type, [reference])

通过使用 细胞 函数,你可以得到一个单元格引用的很多细节,包括 绝对的 你可以从上面的图片中看到它。

# OFFSET函数在Excel中的应用

Excel的OFFSET函数 返回一个范围的引用,该范围与给定的引用有一定数量的行和列。

OFFSET函数的语法。

=OFFSET(reference, rows, cols, [height], [width])

  • 在这里,我使用了以下公式,在 B13 箱子。
=sum(offset(b4,3,1,3,2))

这个公式是如何运作的?

  • 的参考。 关节 函数是单元格引用 B4 那么,细胞 B4 的立场是 0 .
  • 那么 3 从参考文献中往下看的行数。
  • 那么 1 从最后一个位置开始向右列。
  • 最后,范围之和 C7:D9 (高度 3 行数和宽度 2 列)。 这将返回一个值为 756 范围 C7:D9 用橙色的边框突出显示。

因此,前提条件的讨论已经结束。

现在,让我们来谈谈我们的主要讨论。

在Excel范围内查找文本并返回单元格参考的3种方法

在本节中,我将解释在Excel中查找文本和返回单元格引用的方法。 此外,为了让你更好地理解,我将使用以下数据集。

方法1:使用INDEX & MATCH函数来查找范围内的文本并返回单元格参考信息

在这个方法中,我将在单列中搜索文本,如果找到了,公式将返回引用。 此外,我将使用 索引 匹配 函数来查找范围内的文本并返回单元格引用。

步骤。

  • 首先,选择一个不同的单元格 D17 你想保留结果的地方。
  • 其次,写下以下公式,在 D17 细胞。
=CELL("地址",INDEX(B4:B14,MATCH(D16,B4:B14,0))

  • 随后,按 进入 来获得结果。

最后,你将得到一个单元格引用的" 滴答网 "的文字。

这个公式是如何运作的?

让我解释一下文本的公式 "Dropbox" :

  • 这一部分的公式。 匹配(D16,B4:B14,0)。 ,返回值 9 ......因其地位 滴答网 阵列中的 B4:B14 第9届 因此,总体公式变成了。

=CELL("地址",INDEX(B4:B14,9))

  • 现在 index(b4:b14,9) 部分指的是单元格参考 B12 所以,这个公式变成了。 =CELL("地址",B12)
  • 然后。 =CELL("地址",B12) 返回单元格的绝对引用 B12 .
  • 因此,我得到 $B$12 作为整个公式的输出。

注意:INDEX(B4:B14,9)可以返回数值或单元格引用。 这就是INDEX函数的魅力。

阅读更多:Excel动态引用另一个工作表中的单元格

类似读物

  • 如何在Excel中使用INDIRECT函数(12个合适的例子)
  • 如果单元格中包含特定的文本,那么在Excel中添加1(5个例子)。
  • 如何在Excel中使用ROW函数(附8个例子)
  • 在Excel中,如果单元格中包含文本,则在另一个单元格中添加文本
  • 如何在Excel中使用COLUMNS函数(3个例子)

方法2:应用INDEX, MATCH & OFFSET函数

在这种方法中,我可以从一个以上的列中搜索文本。 但你必须自己选择列。 此外,我将使用 INDEX,OFFSET。 匹配 函数来查找范围内的文本并返回单元格引用。

步骤。

  • 首先,写下以下公式,在 D18 细胞。
=CELL("地址",INDEX(OFFSET(B4,0,D17-1,11,1), MATCH(D16,OFFSET(B4,0,D17-1,11,1),0))

  • 第二,按 进入 来获得结果。

最后,你将得到一个单元格引用的" 迈克-利特尔 "的文字。

这个公式是如何运作的?

  • 这个公式的工作原理和上面的一样,唯一不同的是:这一列是用Excel的 关节 如果你了解 关节 函数,那么这部分就很容易理解了。 OFFSET(B4,0,D17-1,11,1)

阅读更多:OFFSET函数在Excel中的应用实例(公式+VBA )

方法3:使用组合函数查找范围内的文本并返回单元格参考值

有时一个文本值可能会在一个范围内重复多次。 我可以返回该文本在范围内的行号。 这里,我将使用 小型。 ROW , 基金会 函数来查找范围内的文本并返回单元格引用。

你从下面的图片中可以看到,文本 "苹果" 正在重演 3 次,范围为 B4:B14 .

让我告诉你我是如何得到这些行数的。

  • 我在单元格中使用了这个公式 D9 .
{=small(if($d$6=$b$4:$b$14,row($b$4:$b$14)-row($b$4)+1),row(1:1)) }

  • 然后我把这个公式复制下来,在 D10 细胞。
=small(if($d$6=$b$4:$b$14,row($b$4:$b$14)-row($b$4)+1), row(2:2))

  • 在这里,我按下了 ctrl + shift + enter 来获得结果。

  • 同样,我也复制了公式,直到公式返回一个错误值。

这显然是一个Excel数组公式。

但在此之前,你必须知道如何 小型 函数在Excel中的作用。

SMALL函数的语法。

SMALL(array,k)

比如说。 SMALL({80;35;55;900},2) 将返回 第2次 阵列中最小的值 {80;35;55;900} 输出将是。 55 .

那么,这个公式是如何运作的呢?

细胞 D9 {=small(if($d$6=$b$4:$b$14,row($b$4:$b$14)-row($b$4)+1),row(1:1)) }

要清楚地了解这个数组公式,你可以阅读我的指南。 Excel数组公式基础2--数组公式的分解

  • 这一部分的公式。 if($d$6=$b$4:$b$14,row($b$4:$b$14)-row($b$4)+1) ,实际上返回的数组为 小型 功能。
    • 逻辑测试部分 中频函数 是。 $d$6=$b$4:$b$14 这一部分测试(一个接一个)范围内的值是否为 $B$4:$B$14 等于 $D$6 如果相等,则一个 为真 值被设置在数组中,如果不相等,则一个 假的 值被设置在数组中。 {false;false;true;false;false;true;false;false;false}。
    • 而且 value_if_true 部分是。 行($b$4:$b$14)-行($b$4)+1)。 这整个部分的回报是这样的。 {1;2;3;4;5;6;7;8;9;10;11} - {1} + 1 = {0;1;2;3;4;5;6;7;8;9;10} + 1 = {1;2;3;4;5;6;7;8;9;10;11}
  • ROW(1:1) 实际上是指 k 的。 小型 函数,并返回 1 .
  • 因此,单元格中的公式 D9 变得像这样。 small(if({false;false;true;false;false;true;false;false},{1;2;3;4;5;6;7;8;9;10;11}),1)。
  • 现在 基金会 函数返回这个数组。 {false;false;3;false;false;7;false;9;false;false}。
  • 该公式变成了。 small({false;false;3;false;false;7;false;9;false},1).
  • 最后,该公式返回 3.

我希望你明白这个复杂的公式是如何运作的。

阅读更多。 淘宝网上有很多卖家,他们都是在淘宝网上买的,但是淘宝网上有很多卖家,他们都是在淘宝网上买的。

总结

我希望你认为这篇文章对你有帮助。 在这里,我已经解释了 3 适当的方法来了解如何 在Excel中查找范围内的文本并返回单元格引用 您可以访问我们的网站 优秀 如果您有任何意见、建议或疑问,请在下面的评论区提出。

Hugh West is a highly experienced Excel trainer and analyst with over 10 years of experience in the industry. He holds a Bachelor's degree in Accounting and Finance and a Master's degree in Business Administration. Hugh has a passion for teaching and has developed a unique teaching approach that is easy to follow and understand. His expert knowledge of Excel has helped thousands of students and professionals worldwide improve their skills and excel in their careers. Through his blog, Hugh shares his knowledge with the world, offering free Excel tutorials and online training to help individuals and businesses reach their full potential.