跳转至

MVLOOKUP

类别:EGTools 专用函数

批量执行 VLOOKUP,可返回多列。

语法

=MVLOOKUP(查找值, 查找数组, 返回列, [匹配方式], [未找到值])

参数

参数 必需 说明
查找值 必需 键列(或单个值)
查找数组 必需 数据表 — 首列为键
返回列 必需 要返回的列号,如 2 或 {2,3}
匹配方式 可选 FALSE 精确(默认),TRUE 近似
未找到值 可选 无匹配时的值(默认 "")

返回

以查找值元素数(行优先)×返回列数大小的数组(溢出)返回,无匹配的行填入未找到值(默认 "")。缺少必需参数、查找数组不是数组、返回列号无效时返回 #VALUE!。

示例

公式 结果 说明
=MVLOOKUP({"a";"c"},{"a",1;"b",2},2) {1;""} 多个键精确匹配
=MVLOOKUP("b",{"a",1,"x";"b",2,"y"},{2,3}) {2,"y"} 同时返回多列
=MVLOOKUP(15,{10,"low";20,"high"},2,TRUE) low 近似匹配(小于等于的最大值)

备注

  • 精确匹配基于哈希,键重复时返回第一行。
  • 近似匹配在内部排序后进行二分查找,无需预先排序数据。
  • 键比较不区分大小写。
  • 查找值除纵向列表外也可为横向(1×N)或二维数组,按行优先顺序读取并以纵向返回结果。
  • 支持:Excel 2010+。在所有 Excel 版本中均按 MVLOOKUP 名称注册。