在Excel中

时间:2017-02-16 14:36:51

标签: excel vba excel-vba

我在Excel中有两个表,它们具有相同的表头但是顺序不同。

如何将行合并到1个表中,但是这样根据列标题,所有值仍然在正确的列中?

我恐怕不得不使用VBA,但我只是想确保没有其他聪明的选择。

也许Excel甚至不是用于此任务的最佳软件?

1 个答案:

答案 0 :(得分:0)

使用=INDEX($B$2:$C$3;MATCH($I2;$A$2:$A$3;0);MATCH(J$1;$B$1:$C$1;0)) 时要小心,你必须用它来锁定所有东西,除了:

  • 您在目标表中测试的ID行
  • 您在目标表中测试的标题列

这样,您就可以在整行上“扩展”公式,直到该表的最后一个ID。

然后为第二张表做同样的事情! Etvoilà! ;)

对于第一张表:

=INDEX($B$2:$C$3;MATCH($I2;$A$2:$A$3;0);MATCH(J$1;$B$1:$C$1;0))

对于第二张表:

EQUIV

截图(我是法语版,所以MATCH = [checked]="true"英文):

第一张表:

enter image description here

第二张表:

enter image description here