When什么时候用得到
你用公式找到最大值在第 8 行第 5 列,想直接显示「在 $E$8 这一格」。或者想按行号列号去取值。
ADDRESS 把数字变成地址文字。
What这是什么
ADDRESS — 返回文字形式的地址(只是文字,不是真正的引用)。
INDIRECT — 把文字地址变成可用的引用。
INDEX — 从二维范围里按「第几行、第几列」取值。
| 函数 | 语法 | 例子 |
|---|---|---|
ADDRESS | =ADDRESS(row_num, column_num, [abs_num], [a1], [sheet_text]) | =ADDRESS(8,5) → $E$8 |
INDIRECT | =INDIRECT(ref_text) | =INDIRECT(ADDRESS(8,5)) |
INDEX | =INDEX(array, row_num, [column_num]) | =INDEX(E4:F7,3,2) |
How一步一步做
- 1
基础:
=ADDRESS(8,5)→$E$8第 8 行第 5 列,默认是绝对引用。
=ADDRESS(3,7)→$G$3。 - 2
变成真的引用
=INDIRECT(ADDRESS(8,5)),取到 E8 的值。 - 3
相对引用
第三个参数设 4:
=ADDRESS(8,5,4)→E8(不带$)。 - 4
加工作表名
第五个参数:
=ADDRESS(3,7,,,"Sheet2")→Sheet2!$G$3。 - 5
按位置取值
=INDEX(E4:F7,3,2):从 E4:F7 取第 3 行第 2 列,结果 92。
应用:用 MAX 或 MATCH 找出最大值所在的行 / 列号,再用 ADDRESS 变成看得懂的地址。
❌ 以为 ADDRESS 的结果可以直接当引用用:它只是文字,要搭配 INDIRECT。
Why为什么这样做
✅ ADDRESS 算位置,INDEX 取值,两个搭配很常见。
Sources
Blog / Website: