应用 Vlookup 值直到最后一个非空白单元格

时间:2021-03-19 09:22:38

标签: vlookup

我有一个包含 2 个工作表的文件,其中工作表 A 是来自服务器的原始数据,而工作表 B 中的数据是我自己的构建数据库。我通常使用 Vlookup 和 IF 函数比较两个工作表中的数据以查看是否有任何不匹配。

随着数据越来越大,我的文件大小随着 Excel 公式呈指数增长。我希望使用 vba 创建一个文件,而不是在每个单元格上复制粘贴公式。

  1. 我需要对工作表 A 和 B 中的每个单元格进行 vlookup,直到它到达连续的空白单元格。目前我正在将公式复制并粘贴到每一列。
  2. 对其他列重复相同的操作。
  3. 对所有 vlookup 数据进行最终匹配检查,看看是否全部匹配。

参考下面的图片,您可能会有更清晰的图片。感谢您在这方面的帮助和建议。

enter image description here

我已经更新了我自己的非工作代码(如果它一团糟,请原谅我)。

此代码以红色粗体显示错误提示

<块引用>

编译错误,预期 = Application.worksheetFunction.Vlookup(Range("A"&X),WorksheetB.Range("A:E"), 2, False).

我不知道把“=”放在哪里。我尝试使用另一种方法,即公式 R1C1,它更容易选择范围。它有效,但结果返回与在单元格中键入公式而不是 vlookup 值完全相同,而且我不喜欢索引列,因为运行代码时速度很慢

Dim X as integer

Application.ScreenUpdating = False 

Lastrow = Range("A1", Range("A1").End(XlDown)).Rows.Count 

Range("E1").Select
For X=1 to Lastrow Application.worksheetFunction.Vlookup(Range("A"&X),WorksheetB.Range("A:E"), 2, False) 

Activecell.Offset(1,0).Select
Next

Application.ScreenUpdating = True

End Sub

0 个答案:

没有答案
相关问题