如何使用合并单元格中的vlookup创建结果表

时间:2013-05-24 17:27:00

标签: excel vlookup

我有这个数据表,我想要另一个结果表。当我写国家名称时,结果表可以显示所有公司的data1,data2和data3.I尝试使用vlookup但是因为有合并的单元格公式只显示第一行。 我该如何解决问题?

enter image description here

1 个答案:

答案 0 :(得分:1)

如果我理解正确,您需要设置查找范围,以便在您进入特定状态时,可以查看具有该状态数据的所有公司的数据。这是一种方法。

您需要做的第一件事是在原始表的左侧设置三列:

  • 第一列包含与每行数据相关联的州的名称
  • 第二个是计算每个州的数据行数的索引
  • 第三列合并前两列,为表格中的每一行生成一个唯一的键值。

这三列中的所有值都可以通过公式指定。下图显示了第一行单元格A9:C9的公式,然后通过第27行向下复制。

columns for lookup key

下一步是布置新表,在我的示例中位于单元格Q8:U27中。

关于设置有几点需要注意。首先,将显示的状态输入到单元格Q9中,我以黄色突出显示。在表格的左侧,在P列中,我输入了从1到19的项目编号,这将需要构建查找的键值。查找公式本身位于单元格R9:U27中;在图片中,显示了第一行(R9:U9)的公式(然后将它们向下复制到第27行)。

new table

值得花一点时间仔细查看其中一个查找。以下是单元格“R9”中第一个公司名称的公式。

  =IFERROR(VLOOKUP($Q$9&$P9,$C$9:$N$27,4,0),"")

依次查看VLOOKUP的每个参数,$Q$9&$P9将单元格Q9中的州名称与项目编号(本例中为1)连接起来,产生查找值'California1'。查找表定义为范围$C$9:$N$27 - 该范围的列C是查找值匹配的范围。第三个参数是如果查找匹配则返回值的列。此处的数字4对应于原始表的公司名称列。最后,最后一个参数为0(或等效,FALSE),表示需要完全匹配。

最后,VLOOKUP函数包含在IFERROR中。这将捕获未找到匹配时将返回的#N/A,将其替换为空字符串(“”)。