Excel - 使用 VLOOKUP 创建汇总表

Excel - 使用 VLOOKUP 创建汇总表

我需要一些 Excel 方面的帮助。

员工 地点 工作时间 加班
Mr.One 站 1 40 6
七太太站 2 30 6
双子站 3 30 4
三人站 4 40 4
八太太站 1 32 6
四先生站 2 32 7
九号太太站 3 40 6
五先生站 4 40 7
六先生站 1 25 2
十太太站 2 40 3
十一先生站 3 60 1

我有一张包含两张工作表的电子表格。一张是数据表(如上所示),另一张是摘要,其中包含Locations数据验证列表列。我想使用数据验证列表从特定位置提取所有人员和信息。我尝试过使用,VLOOKUP()但我只知道如何使用它一次提取一个人,而不是特定于某个位置的一组记录。

答案1

如果您使用的是 Excel 2007 或更高版本,则可以使用以下解决方案(函数IFERROR是限制因素)。在下面的屏幕截图中显示的示例摘要表中,我使用此公式填充了几行,以返回与 B2 中下拉列表中选择的位置匹配的员工:

=IFERROR(INDEX(Data!$A$1:$A$12,SMALL(IF(Data!$B$1:$B$12=Summary!$B$1,ROW(Data!$A$1:$A$12),2000000),ROW()-3)),"")

Ctrl此公式必须作为数组公式输入。按+ Shift+即可Enter

在小时数列中,向下填写了以下数组公式:

=IFERROR(INDEX(Data!$C$1:$C$12,SMALL(IF(Data!$B$1:$B$12=Summary!$B$1,ROW(Data!$C$1:$C$12),2000000),ROW()-3)),"")

在此处输入图片描述

关于公式需要注意的一点是SMALL函数中的最后一个参数ROW()-3。这将返回1第 4 行中的第一条记录。如果您的汇总表从不同的行开始,则需要调整此参数,以便它返回1表格的第一行。例如,如果您的表格从第 2 行开始,则需要将参数更改为ROW()-1

相关内容