在两个工作表中,我在A列中都有一个键。并非所有键值都在两个工作表中。 对于工作表1的A列中的每个键值,我想在工作表2中找到相应的键,并将工作表2的B列中的数据移动到工作表1的B列中。
我从来没有编写过一个宏,所以我完全迷失了写这段代码。
答案 0 :(得分:2)
这里不需要VBA,菲利普。
在Sheet1的单元格B1中尝试此公式:
=IFERROR(vlookup(A1,Sheet2!A:B,2,false),"")
如果您使用的是XL 2003,请执行以下操作:
=IF(ISERROR(vlookup(A1,Sheet2!A:B,2,false)),"",vlookup(A1,Sheet2!A:B,2,false))
然后将此公式向下拖动到Sheet1的A列中的其余数据。
NB - Sheet2是Worksheet2的假定名称,您可能需要更改以满足您的需求。
NB2 - 您可以在Excel帮助(或在线)中查找vlookup
以更好地了解它的作用
答案 1 :(得分:0)
您确定需要使用宏吗?听起来像你使用的是Excel,一个简单的VLOOKUP公式可以满足您的需求。
VLOOKUP如下所示:= VLOOKUP(A1,Sheet2!$ A:$ B,2,FALSE)
A1是你的参考单元格(在这种情况下你是A栏中的“键”)。
Sheet2!$ A:$ B是查找表(在本例中是第二张表中的A和B列)。
2是您想要数据的列号,从左侧开始计算(在本例中为第二列,B列)
FALSE告诉公式只返回完全匹配的值。 TRUE返回查找表中最接近的匹配。