合并两个Excel表基于列中的匹配数据

Har*_*ngh 21 excel merge

我一直在研究一个excel问题,我需要找到答案,我将在下面解释.

我有Table01的列:

  • 集团号
  • 名称
  • 价钱

我有Table02的列:

  • 集团号

我已经合并了Table01和Table02的两个表,如Image03所示,但没有订单.

但是,如您所见,Group No Column在两个表中都相似.

我需要的是考虑'Group No'列来获得Table01和02的匹配行.

最终结果将被视为最终图像.

有没有办法用excel函数做到这一点?

图片

谢谢!

tey*_*lyn 36

将表放在Sheet2的第二个图像中,列D到F.

在Sheet1中,单元格D2使用公式

=iferror(vlookup($A2,Sheet2!$D$1:$F$100,column(A1),false),"")
Run Code Online (Sandbox Code Playgroud)

横向和向下复制.

编辑:这是一张图片.数据分为两页.在Sheet1上,将公式输入到单元格D2中.然后将公式复制到F2,然后根据需要向下复制多行.

在此输入图像描述

  • 请阅读.如果你不读,我帮不了你. (5认同)

Ber*_*cht 10

Teylyn的回答对我来说非常有用,但我不得不对其进行修改以获得正确的结果.我想为任何需要它的人提供一个扩展的解释.

我的设置如下:

  • 表1:2014年的完整数据
  • Sheet2:A1中的2015年更新行:D50,按第一列排序
  • Sheet3:合并的行
  • 我的数据没有标题行

我将以下公式放在Sheet3的单元格A1中:

=iferror(vlookup(Sheet1!A$1;Sheet2!$A$1:$D$50;column(A1);false);Sheet1!A1)
Run Code Online (Sandbox Code Playgroud)

请按如下方式阅读:获取Sheet1中第一列的值(旧数据).在Sheet2中查找(更新的行).如果存在,则输出Sheet2中指示列的值.出错时,输出Sheet1的当前列的值.

笔记:

  • 在我的公式中,";" 用作参数分隔符而不是",".那是因为我位于欧洲,我们使用","作为小数分隔符.改变";" 回到","如果你住在一个"."的国家.是小数点分隔符.

  • 1美元:表示将公式复制到不同列中的单元格时始终使用第1列.$ A $ 1表示:即使将公式复制到不同的行或列,也始终采用确切的单元格A1.

粘贴A1中的公式后,我将范围扩展到B,C等列,直到达到表格的整个宽度.由于使用了$ -signs,因此在单元格B1,C1等中提供以下公式:

=IFERROR(VLOOKUP('Sheet1'!$A1;'Sheet2'!$A$1:$D$50;COLUMN(B1);FALSE);'Sheet1'!B1)
=IFERROR(VLOOKUP('Sheet1'!$A1;'Sheet2'!$A$1:$D$50;COLUMN(C1);FALSE);'Sheet1'!C1)
Run Code Online (Sandbox Code Playgroud)

等等.请注意,查找仍在第一列中完成.这是因为VLOOKUP需要在查找完成的列上对查找数据进行排序.但是,输出列是粘贴公式的列.

接下来,在Sheet 3中选择一个矩形,从A1开始,并具有Sheet1中数据的大小(相同的行数和列数).按Ctrl-D将第一行的公式复制到所有选定的单元格.

单元格A2,A3等将获得以下公式:

=IFERROR(VLOOKUP('Sheet1'!$A2;'Sheet2'!$A$1:$D$50;COLUMN(A2);FALSE);'Sheet1'!A2)
=IFERROR(VLOOKUP('Sheet1'!$A3;'Sheet2'!$A$1:$D$50;COLUMN(A3);FALSE);'Sheet1'!A3)
Run Code Online (Sandbox Code Playgroud)

由于使用了$ -signs,查找区域是常量,但是从当前行使用输入数据.