INDIRECT间接引用
把一段文字当地址,去那个格子取值。
1
语法结构
INDIRECT(地址文本, [引用样式])
地址文本引用样式方括号 [ ] 表示可选参数
返回:引用:文本指向的单元格或区域的值
2
什么时候用它
3
动画演示
动画演示·数据第 1 / 3 步
| A | B | C | D | |
|---|---|---|---|---|
| 1 | 月份 | 销售额 | ||
| 2 | 1月 | 1200 | 1300 | |
| 3 | 2月 | 1500 | ||
| 4 | 3月 | 1300 | ||
| 5 | 4月 | 1800 | ||
| 6 | 5月 | 1600 |
STEP 1
MATCH 找到「3月」在区域第 3 行
1300:3
4
示例演示
D2 : =INDIRECT("B"&(MATCH("3月",A2:A6,0)+1))
=INDIRECT("B"&(MATCH("3月",A2:A6,0)+1)) 取到 3 月的 1300
| A | B | C | D | |
|---|---|---|---|---|
| 1 | 月份 | 销售额 | ||
| 2 | 1月 | 1200 | 1300 | |
| 3 | 2月 | 1500 | ||
| 4 | 3月 | 1300 | ||
| 5 | 4月 | 1800 | ||
| 6 | 5月 | 1600 |
当前表:数据 · 公式单元格 D2 · 绿色底为公式,蓝色底为动态数组溢出结果
5
常见错误
现象#REF!
原因拼出来的文字不是合法地址,如表名有空格却没加引号
解决带空格的表名要写成 "'销售 部'!A1"
现象重命名 Sheet 后全变 #REF!
原因INDIRECT 里的表名是文字,不会跟着改
解决表名尽量固定,或改用 INDEX+多表引用
现象引用外部关闭的工作簿失败
原因INDIRECT 不支持引用已关闭的文件
解决先打开源文件,或改用直接引用
6
相关公式
动手试一试
在编辑器里载入这个公式的示例数据,改改数字看看结果怎么变。