王志军
在职场实战中,VLOOKUP函数被使用的频率非常高,该函数可以搜索表区域首列满足条件的元素,确定待检索单元格在区域中的行序号,再进一步返回选定单元格的值。第一参数是需要在表格或区域的第一列中查询的值,第二参数是需要查询的单元格区域,这个区域中的首列必须包含查询值,否则将返回錯误值,第三参数用于指定要返回查询区域中第几列的值,第四函数用于指定函数的查询方式,例如精确匹配或近似匹配。
这里,我们介绍VLOOKUP函数的几个特殊应
用:
特殊应用1:快速实现一对多的査询
例如图1所示的数据表,要求从B:E的数据表,根据H2单元格的职务,查询对应的多个姓名。
将A列作为辅助列,也可以插入一个空白列,在A2单元格输入公式“=(E2=$H$2)+A1”,公式执行之后向下拖拽或双击填充柄,可以得到图2所示的效果。E列的职务每重复出现一次,A列的序号增加1。
选择12单元格,在编辑栏输入公式“=IFERROR(VLOOKUP(ROW(Al),A:C,3,0),"")”,ROW函数的功能得返回引用的行号,VLOOKUP函数使用1至N的递增序列作为查询值,使用A:C列作为查询区域,以精确匹配的方式返回与之相对应的B列的姓名,需要提醒的是查找区域必须从辅助列A列开始,最后使用IFERROR函数进行容错判断。公式执行之后向下拖拽填充柄至空白为止,最终效果如图3所示。完成上述操作之后,我们可以将A列设置为白色或进行隐藏,这样就比较美观了。
特殊应用2:根据指定次数重复数据
如图4所示,这里要求根据C列指定的重复次数,在E列重复显示B列的内容。
我们仍然可以利用VLOOKUP函数实现,将A列作为辅助列,选择A2单元格,在编辑栏输入公式“=A1+C2”,向下拖拽填充柄。选择E2单元格,在编辑栏输入公式“=IFERR0R(VL00KUP(R0W(A1),A:B,2,0),E3)&""”,各函数的功用如前所述,公式执行之后向下拖拽填充柄至空白为止,最终效果如图5所示。
补充:VLOOKUP函数中第三个参数的列号,不能理解为工作表中实际的列号,而是指定要返回查询区域中第几列的值。