1

我需要将表 1 中的 A2 列中的数据等与表 2 中的 A2 列中的数据进行匹配,依此类推。如果表 1 和表 2 的 A 列中的数据匹配,我需要表 B 和 C 列中的数据2替换表1的B和C列中的数据。我对做这种事情知之甚少,所以非常感谢任何帮助!

表 1

     A     B     C
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

     A     B     C
2  11111  2.09  5.79
3  12345  5.11  9.89
4  88552  4.01  8.79


需要表 1 更改为

     A     B     C
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
4

2 回答 2

1

在第三张纸上使用这些功能

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 匹配,否则这应该有效。或者如果您需要动态执行此操作。如果列 a 不匹配,可以抛出一些 vlookup。

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

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))
于 2014-01-31T19:14:22.333 回答
0

这太多了,无法发表评论,所以我将其作为答案。

我理解的方式是,由于 sheet1 有更多数据,因此您只想在 sheet1 和 2 都在行上有数据时进行此比较。所以如果 sheet1 在第 1 - 100 行有数据,而 sheet2 在第 1 到第 50 行有数据,您只想对 sheet1 中的前 50 行进行此比较,对吗?

因此,您可以在 sheet1 中找到未使用的列,而不是复制和粘贴公式。去第一行。在公式框中,键入:“=if(”,不带引号。现在,选择第一个要比较的单元格,根据您的示例,您将选择 sheet1,A2。然后键入“=”,不带引号。然后选择第二个单元格你想比较 - 在​​你的例子中,sheet2,A2。然后输入“,不带引号。然后选择你想要数据的单元格,如果前两个单元格相等。在你的例子中,sheet2 B2。然后输入“, " 不带引号,然后如果前 2 个单元格不相等,则选择包含要使用的数据的单元格。在您的示例中,sheet1 b2。然后键入不带引号的 ")"。

因此,使用您的示例,该功能看起来类似于 bigtree 的功能:=if('sheet1'!A2='sheet2'!A2,'sheet2'!b2,'sheet1'!b2)

因此,这会将 sheet1 单元格 A2 与 sheet2 A2 进行比较,如果它们相等,则放入公式的单元格将具有 sheet2 b2 的值,如果它们不相等,则具有此公式的单元格将具有值表 1 B2。然后,将此公式向下拖动到您想要的任意多行,公式将针对每一行自动调整。你会看到数字增加了。然后,选择带有公式的列,右键单击并选择复制,然后右键单击并转到特殊粘贴,然后单击值。这将使该列仅包含值,而不是公式,现在您可以将此数据粘贴到 B 列表 1 中。

您可以将此公式重复用于任何列,只需按照步骤操作即可。

HTH,祝你好运!

于 2014-01-31T21:14:54.107 回答