通过引用列表查找两列之间的匹配项并将结果放在新列中

时间:2012-11-14 02:25:46

标签: excel excel-2010 vlookup

我有两列(P栏和Q栏),其中有一系列公司。

在P和Q栏的公司名单中,有些公司被称为“全球公司”。

我还有一份“全球公司”的清单,我通过电子邮件(不是excel格式)得到它。在该电子邮件中,列出了约85家公司。

“全球公司”名单中的公司名称以及P栏和Q栏中的公司名称不一致。例如,有一家公司写成“Jane Frank”,同一家公司写成“Jane & Frank”。另一个例子是“H Tech Japan”,还有“H Tech UK”,但它是同一家公司。

如何制作excel可以在列P和列Q之间识别哪一个是“全球公司”(通过参考我放置'全球公司'列表的位置;可能在同一张表的列中或其他地方)和将“全球公司”的结果放在R栏(Q栏旁边的新栏)?

1 个答案:

答案 0 :(得分:0)

有一种方法,但不是一种简单的方法......

1)首先,将P和Q列的所有内容复制并粘贴到一张新的工作表中,一张在另一张下,因此它成为一个带有公司名称的列。

2)在功能区数据上,选择删除重复项,然后选择确定。

3)按字母顺序对列进行排序。从这里,您有两个选择:

3a)如果您的列表具有可管理的大小,则可以手动执行该任务。我们的想法是将此列(例如A)复制到B列,然后手动修复名称以使它们与模式匹配(在本例中为85项目列表)。你会有类似的东西:

  A                   B
H Tech Japan      H Tech Japan
H Tech Japón      H Tech Japan
H Tech UK         H Tech Japan
H Tech jp         H Tech Japan
Jane & Frank      Jane & Frank
Jane et Frank     Jane & Frank
Jane and Frank    Jane & Frank
Jane y frank      Jane & Frank
Jane & FRaNK      Jane & Frank

3B)现在,如果列表大小无法手动执行,您可以使用Excel添加程序将程序自动化到合理程度(我说70%或更多的匹配是准确的)在称为模糊查找;你可以在微软下载它:

http://www.microsoft.com/en-us/download/details.aspx?id=15011

它几乎完全相同:使用模糊算法,它匹配相似文本序列的模式,并返回一列匹配。有很多YouTube视频解释了如何使用模糊查找Excel,以及你浪费的时间和#34;学习它是完全值得的。

请注意,即使使用此程序,检查匹配并手动更正未找到的项目或不匹配也是最佳做法,即使它们很少。

4)通过这种或那种方式,您现在应该有一个列,其中包含原始列P和Q(来自新工作表的A列)的输入,以及它旁边的正确对应项(B列)。现在,回到原始表:

  • 在P

  • 旁边打开一个新列
  • 使用Vlookup搜索更正列表中P上的值[= VLOOKUP(P2; [列表范围]; 2; 0)]

  • 双击单元格Q2右下方的小黑色标记,将公式展开,直到列的最后一项。

  • 现在应该选择公式范围。如果没有,选择它(例如,Q2到Q [最后一行]),用CTRL + C复制,粘贴为ALT + CV V的值。再次选择范围,在单元格P2中剪切它和PASTE(替换旧值)。

对Q列执行相同的处理。

5)将85项目列表放在另一个工作表中,创建两个新列(例如,IsGlobal_P和IsGlobal_Q)并粘贴以下公式以返回"是"如果它是全球性的,那么" No"如果不是:

=IF(ISERROR(MATCH(P2;Sheet2!$A$1:$B$300;0));"No";"Yes") (for variable IsGlobal_P)

=IF(ISERROR(MATCH(Q2;Sheet2!$A$1:$B$300;0));"No";"Yes") (for variable IsGlobal_Q)

现在您已确定全球公司!

希望它有所帮助...