如果匹配,需要匹配不同工作表中的数据并replace另一个单元格中的数据

我需要将A2列中的数据与1中的数据匹配到A2中的数据等等。如果表1和表2中A列中的数据匹配,我需要表格B&C中的数据2来replace表1 B&C列中的数据。我知道很less做这种东西,所以任何帮助将非常感激!

表1

ABC 2 12345 5.35 9.95 3 15874 4.22 10.99 4 11111 2.24 5.99 5 98745 5.33 9.95 6 88552 4.24 8.95 

表2

  ABC 2 11111 2.09 5.79 3 12345 5.11 9.89 4 88552 4.01 8.79 

需要换1张

  ABC 2 12345 5.11 9.89 3 15874 4.22 10.99 4 11111 2.09 5.79 5 98745 5.33 9.95 6 88552 4.01 8.79 

在第三张纸上使用这些function

 column a ='sheet1'!a2 column b =if('sheet1'!b2='sheet2'!b2,'sheet2'!b2,'sheet1'!b2) column c =if('sheet1'!c2='sheet2'!c2,'sheet2'!c2,'sheet1'!c2) 

复制sheet3并将值粘贴到sheet1中。 这应该工作,除非列a不匹配。 或者如果你需要dynamic地做到这一点。 如果列a不匹配,可以抛出一些vlookups。

我的数据在列中匹配,你的公式可能看起来像这样。

 column a ='sheet1'!a2 column b =if(not(iserror(vlookup(a2,'sheet2'!a:c,2,false))),vlookup(a2,'sheet2'!a:c,2,false),vlookup(a2,'sheet1'!a:c,2,false)) column c =if(not(iserror(vlookup(a2,'sheet2'!a:c,3,false))),vlookup(a2,'sheet2'!a:c,3,false),vlookup(a2,'sheet1'!a:c,3,false)) 

这是太多的评论,所以我把它放在答案。

我站在这里的方式是,因为sheet1有更多的数据,所以只有当sheet1和2都在行上有数据时才需要进行这种比较。 所以如果sheet1在第1行到第100行中有数据,并且sheet2在第1到第50行中有数据,那么您只希望对sheet1中的前50行进行这种比较?

所以,不是复制粘贴公式,而是在sheet1中find一个未使用的列。 去第一行。 在公式框中input:“= if(”不带引号,现在select第一个要比较的单元格,根据你的例子selectsheet1,A2,然后在不带引号的地方input“=”,然后select第二个单元格你要比较 – 在​​你的例子中,sheet2,A2,然后键入“,”不带引号,然后select你想要数据的单元格,如果前2个单元格相等的话。 “不带引号,然后select数据单元格,如果前2个单元格不相等,在你的例子中,sheet1 b2,然后键入”)“,不带引号。

所以使用你的例子,这个函数看上去和bigtree有如下相似: =if('sheet1'!A2='sheet2'!A2,'sheet2'!b2,'sheet1'!b2)

因此,这将比较sheet1单元格A2和sheet2 A2,如果它们相等,则放入公式的单元格将具有sheet2 b2的值,如果它们不相等,则具有此公式的单元格的值将为sheet1 B2。 然后,将这个公式向下拖动到所需的许多行,公式将自动调整为每行。 你会看到数字增加。 然后,select公式列,右键单击并select复制,然后右键单击并粘贴特殊,然后单击值。 这将使得列只包含值,而不是公式,现在您可以将这些数据粘贴到B列表1中。

你可以重复使用这个公式为任何列,只要按照步骤。

HTH,祝你好运!