1. 共同点
① 都是查找函数;
② 把处于不同地方的数据匹配到指定的地方;
③ 数据查询的区域可以是不同的区域,不同的工作簿,不同的工作表。
2. 不同点
函数 | 参数 | 运用 | 返回值 | 含义 |
---|---|---|---|---|
Lookup | 查找值,查找范围,返回值范围 | =lookup(“第一季度”, A2:A6, B2:B6) | N/A | 在A2:A6中查找“第一季度”,与最接近的较小值(小于或等于)匹配,然后返回 B 列中同一行内的值。 |
Hlookup | 在第一行中查找的数值;查找范围;待返回的匹配值的行序号;逻辑值(精确or模糊) | =hlookup (b1, A A 1:6,6,0) | 32 | 在A1:K1范围中查找b1的值,返回找到列自该行起往下第六行的数据(B6)。 |
Vlookup | 在第一列中要找的值;查找范围;待返回的匹配值的列序号;逻辑值(精确or模糊) | =vlookup(a1, A A 1:6,6,0) | 100005 | 在A1:A6范围中查找a1的值,返回找到列自该列起往下第六列的数据(f1)。 |
总结:
① 最简单的是lookup函数,查找范围和返回值的范围都是单列,hlookup和vlookup是它基础上的变形;
② Lookup函数,要求第二参数必须升序排列,如果正常返回7;
③ Hlookup函数和vlookup函数的差别在于
一个偏移多少行,一个偏移多少列,
前者适合二维表格数据,后者适合一维表格数据。
3. vlookup函数的拓展
① 利用函数嵌套,自动更改匹配行数
a) 【column】多列均匹配同一值,但返回值不同
‘=vlookup(a1,
A
A
1:6,column(b1),0)
这里的column(b1)会返回单元格b1所在的列,向右拖动填充其他的单元格时,待返回的列序号就回自动增长。
b) 【match】利用函数查找,返回值应该偏移多少列
‘=vlookup(a1,
A
A
1:6,match(b1,a1:k1,0),0)
这里的match(b1,a1:k1,0)会返回单元格b1在a1:k1范围的相对位置,此处就是2,即从a1开始的第二个单元格,待返回的列序号就是2.
② 模糊匹配
如果找不到精确匹配值,则返回小于 lookup_value 的最大数值。
不过这个模糊匹配有个前提,就是查找区域中第一列必须排序,还必须是升序,否则结果不可预料。
即,vlookup的模糊匹配相当于lookup匹配。