Excel:使用vlookup水平返回多个值
通常,您可能希望使用Excel中的VLOOKUP函数来水平返回多个值。
不幸的是,使用VLOOKUP函数无法做到这一点,但可以使用以下公式与INDEX 、 SMALL和IF函数:
=INDEX( $B$2:$B$13 , SMALL(IF( $A$17 = $A$2:$A$13 ,ROW( $A$2:$A$13 )-ROW( $B$2 )+1), COLUMN( A1 )))
此公式查找单元格A17中A2:A13范围内的值,并返回B2:B13范围内的相应值。
您可以水平拖动此公式以查看多个值。
下面的例子展示了如何在实践中使用这个公式。
示例:使用VLOOKUP水平返回多个值
假设我们在 Excel 中有以下数据集,其中包含有关不同球队的篮球运动员得分的信息:
假设我们要在球队列中搜索“Mavs”并水平返回每个点值。
为此,我们可以在单元格B17中键入以下公式:
=INDEX( $B$2:$B$13 , SMALL(IF( $A$17 = $A$2:$A$13 ,ROW( $A$2:$A$13 )-ROW( $B$2 )+1), COLUMN( A1 )))
然后我们可以点击这个公式并将其水平拖动到右侧,以显示球队栏中与“Mavs”对应的每个点值:
该公式正确返回同一行中的值 24、40、15 和 25。
请注意,这些值中的每一个都代表与球队列中的“小牛”相对应的积分列中的值:
请注意,您需要单击此公式并将其拖动到右侧,直到遇到#NUM!在其中一个单元格中。
这表明您已成功返回与您搜索的值匹配的每个值。
其他资源
以下教程说明如何在 Excel 中执行其他常见任务:
Excel:如何使用 VLOOKUP 返回所有匹配项
Excel:使用 VLOOKUP 返回空白而不是零
Excel:如何在 VLOOKUP 中使用 TRUE 或 FALSE