INDIRECT函数是Excel中一个非常强大的工具,它可以根据给定的文本字符串动态地引用单元格或区域。这意味着你可以通过简单的文本输入,轻松地指向特定的单元格或区域,而不需要手动调整公式,非常方便灵活。

一、函数语法

INDIRECT(单元格引用, [引用样式])
  • 单元格引用:这是一个必需的参数,它可以是指向一个单元格地址的文本字符串。例如:"A1" 或 "B2"。
  • 引用样式(可选):这是一个逻辑值,指定引用样式。TRUE 表示 A1 样式引用;FALSE 表示 R1C1 样式引用。默认为 TRUE。

二、详细说明

1、单元格引用

这个参数是INDIRECT函数的核心。它可以是一个直接的文本字符串,也可以是指向一个包含文本字符串的单元格。例如:

  • 直接文本字符串:INDIRECT("A1") 会返回对 A1 单元格的引用。
  • 单元格引用:如果单元格 B1 中包含文本 "A1",则 INDIRECT(B1) 会返回对 A1 单元格的引用。

2、引用样式

引用样式决定了如何解释单元格引用。Excel 默认使用 A1 样式引用(即列在前,行在后),但你也可以使用 R1C1 样式引用(即行和列都用数字表示)。

  • A1 样式:这是 Excel 的默认引用样式。例如,A1 表示 A 列和第 1 行的交叉单元格。
  • R1C1 样式:这种引用样式使用 R 和 C 分别代表行和列。例如,R1C1 表示第 1 行和第 1 列的交叉单元格。

三、使用具体实例

1、基本用法演示

excel中XLOOKUP+INDIRECT函数实现跨表动态汇总-趣帮office教程网

假设我们的数据在B3单元格,单元格内容为500

1、单元格文本字符串,输出B3单元格所在的文本

2、直接引用单元格,引用D1单元格的内容,D1单元格内容为B3,即输出B3单元格的内容

3、第三种R1C1,就是输出第三行,第二列内容也就是B3,内容为500

2、在实例中用法

excel中XLOOKUP+INDIRECT函数实现跨表动态汇总-趣帮office教程网

假设我们有很多城市都有几个门店的销售数据,且每张表格样式一样,我们现在需要将其汇总一下。

1、我们先把四个省份,八个城市添加到名称管理器中

excel中XLOOKUP+INDIRECT函数实现跨表动态汇总-趣帮office教程网

2、我们制作动态下拉清单

INDIRECT(A2)

其中A1不能用锁行锁列,去除$

excel中XLOOKUP+INDIRECT函数实现跨表动态汇总-趣帮office教程网

3、动态汇总

我们想要汇总每个城市的门店销售情况,就可以使用XLOOKUP INDIRECT函数进行动态汇总

=XLOOKUP(C$2,INDIRECT($B3&"!A:A"),INDIRECT($B3&"!B:B"))

excel中XLOOKUP+INDIRECT函数实现跨表动态汇总-趣帮office教程网

让我们演示一下最终成品,因为我是演示,也都是随意创造的数据,表格也简单

excel中XLOOKUP+INDIRECT函数实现跨表动态汇总-趣帮office教程网

注意事项

  1. 文本字符串:INDIRECT函数将文本字符串转换为引用。因此,必须确保文本字符串格式正确。例如,"A1" 是有效的单元格引用,而 "A" 或 "1" 则不是。
  2. 引用样式:默认使用 A1 样式引用,但你可以根据需要选择 R1C1 样式引用。记得在公式中进行适当调整。
  3. 范围引用:你可以使用 INDIRECT 函数动态引用一个单元格范围,而不仅仅是单个单元格。这对于需要动态调整引用范围的情况非常有用。

结论

通过这些示例和解释,希望你对INDIRECT函数有了更深的理解和掌握。无论是动态引用单元格、工作表还是区域,INDIRECT函数都可以帮助你实现更加灵活和强大的数据处理。