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名称注册。