【发布时间】:2016-01-06 09:54:06
【问题描述】:
所以我被赋予了与 excel 中的工作表进行比较的任务,如果有一个匹配项将一个单元格中的数据替换为另一个单元格,例如,我在 2 个 excel 工作表中有 2 列,ID 和名称,我想将表 1 中的 ID 与表 2 中的 ID 进行比较,如果找到匹配项,则更新与该 ID 关联的名称。
表 1
ID Name
1 Thomas
2 Jerry
表 2
ID Name
3 Spike
1 Tom
所以在上面的示例中,我需要代码来查看 ID 1 在两个工作表中,并更改工作表 1 中的名称以匹配工作表 2,使其看起来像这样:
ID Name
1 Tom
2 Jerry
我正在尝试使用 Vlookup,它允许我找出它是否存在,但是我不知道如何更改单元格以匹配现有单元格,这是我的代码到目前为止:
Range("C2").Select
ActiveCell.Formula = _
"=IF(ISNA(VLOOKUP([@[ID]], 'Sheet2'!A:B,1,FALSE)), ""New"", ""Existing"")"
Do While Len(Range("A" & r).Formula) > 0
If (Range("C" & r).Value = "Existing") Then
Sheets("Sheet2").Range("A" & r & ":B" & r).Copy _
Destination:=Sheets("sheet1").Range("A" & r & ":B" & r)
Else
End If
我需要能够从 Vlookup 中获取单元格编号,以便我可以在 if 语句中使用它来提取正确的数据。可能有更简单的方法可以做到这一点,如果是这样,我愿意改变一切。
任何帮助将不胜感激。
【问题讨论】: