欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 文旅 > 艺术 > Excel 中 INDEX 和 VLOOKUP 的对比

Excel 中 INDEX 和 VLOOKUP 的对比

2025/4/27 15:51:37 来源:https://blog.csdn.net/zheng15ddi/article/details/146719866  浏览:    关键词:Excel 中 INDEX 和 VLOOKUP 的对比

INDEXVLOOKUP 都是 Excel 中常用的查找函数,但它们的用途和灵活性有所不同。


1. 相同点

均可用于查找数据:都能根据某个条件返回目标值。
支持精确匹配:均可使用 0FALSE 进行精确匹配。


2. 不同点

特性VLOOKUPINDEX + MATCH
查找方向只能从左向右查找(列索引固定)可以任意方向查找(反向、多条件等)
灵活性较死板,必须指定列号更灵活,可动态调整行、列
适用范围适用于简单单列查找适用于复杂查找(如反向、二维表)
计算效率大数据量时可能较慢通常更高效
错误处理需搭配 IFERROR可单独使用 MATCH 检查是否存在

3. 具体示例

示例数据

姓名成绩班级
张三85A班
李四72B班
王五90A班

(1)VLOOKUP 示例

需求:查找“李四”的成绩

=VLOOKUP("李四", A2:C4, 2, FALSE)  // 返回 72

说明

  • A2:C4 是查找范围
  • 2 表示返回第 2 列(成绩)
  • FALSE 表示精确匹配

缺点

  • 如果数据列顺序变化(如“班级”在“成绩”左边),VLOOKUP 无法直接查找。

(2)INDEX + MATCH 示例

需求 1:查找“李四”的成绩(等同于 VLOOKUP

=INDEX(B2:B4, MATCH("李四", A2:A4, 0))  // 返回 72

说明

  • MATCH("李四", A2:A4, 0) 返回“李四”在 A2:A4 的位置(第 2 行)
  • INDEX(B2:B4, 2) 返回 B2:B4 的第 2 个值(72)

需求 2:反向查找(如用“成绩”查“姓名”)

=INDEX(A2:A4, MATCH(90, B2:B4, 0))  // 返回 "王五"

优势

  • 不受列顺序限制,可任意方向查找。

(3)INDEX + MATCH 多条件查找

需求:查找“A班”且成绩“90”的学生

=INDEX(A2:A4, MATCH(1, (B2:B4=90)*(C2:C4="A班"), 0))

(需按 Ctrl+Shift+Enter 输入数组公式)

说明

  • (B2:B4=90)*(C2:C4="A班") 返回 {0, 0, 1}
  • MATCH(1, ...) 找到符合条件的位置(第 3 行)
  • INDEX 返回“王五”

4. 如何选择?

  • VLOOKUP

    • 数据列顺序固定,且查找列在最左时。
    • 适合新手,语法简单。
  • INDEX + MATCH

    • 需要反向查找、多条件查找时。
    • 数据列可能变动,需要更灵活的查找。
  • XLOOKUP(新版 Excel)

    • 更强大,可替代 VLOOKUPINDEX+MATCH

5. 总结

场景推荐函数
简单单列查找VLOOKUP
反向查找INDEX + MATCH
多条件查找INDEX + MATCH
未来兼容性(新版 Excel)XLOOKUP

如果数据可能变化或需要复杂查询,INDEX + MATCH 是更优选择

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词