查找
两步查找
定义
INDEX 与 MATCH 一起使用时,先用 MATCH 定位一个位置,再用 INDEX 取出该位置上的值。
语法
=INDEX(return_range, MATCH(key, lookup_range, 0))
参数
| 参数 | 含义 |
|---|---|
return_range |
包含你想要返回的值的列或行。 |
key |
你要搜索的项目。 |
lookup_range |
包含查找值的列或行,大小与返回区域相同。 |
0 |
让 MATCH 查找精确匹配。 |
示例演练
一份价目表把价格放在 A 列、产品放在 B 列,所以查找值位于答案的右侧。
| A:价格 | B:产品 |
|---|---|
| 29 | 水壶 |
| 68 | 搅拌机 |
| 53 | 烤面包机 |
公式:=INDEX(A2:A4,MATCH("Toaster",B2:B4,0))
结果:53。MATCH 找到 Toaster 在第 3 个位置,INDEX 返回第三个价格 53,尽管它位于查找值的左侧。
练习
城市 Quito、Lima 和 Bogota 位于 B2:B4,它们的海拔(米)2850、154 和 2640 位于 A2:A4。请在 D2 中写出一个公式,返回 Bogota 的海拔。
- 在 D2 中写出一个 INDEX 和 MATCH 公式,返回 Bogota 的海拔。海拔位于 A2:A4,城市位于 B2:B4。
- D2 应显示 Bogota 的海拔。
第 1 步,共 2 步
在 D2 中输入 =INDEX(A2:A4,MATCH("Bogota",B2:B4,0))。
Bogota 在城市列表中排第三,所以海拔是 2640。
无论使用哪种语言,这里的公式都使用英文函数名(如 SUM),小数点一律使用句点“.”。
正在加载工作表…
D2 使用 INDEX 和 MATCH。
D2 现在显示 2640。
下一课是要保留多少位。
相关函数
INDEX 与 MATCH 把一次查找拆成两步,因此每一步都可以单独检查,也可以在别处单独复用。
常见错误
使用没有对齐的区域,例如 INDEX(A2:A4,MATCH(...,B3:B5,0));位置会偏差一行,返回的就是错误的项目。