首页 > 解决方案 > VBA 代替 vlookup

问题描述

我刚开始使用VBA。我有一个有两张纸的工作簿。在第一张纸上,在“D”列中,我有零件编号。在第二张纸上,我再次在“A”列中有部件号,在“B”列中有每个部件号的描述。在 Sheet1 上,我想收集以下数据:

现在通过录制宏自己使用Vlookup:

Application.CutCopyMode = False
    Application.CutCopyMode = False
    ActiveCell.FormulaR1C1 = "=VLOOKUP(RC[-11],'RIG MB'!C[-14]:C[-13],2,0)"
    Range("O2").Select
    Selection.AutoFill Destination:=Range("O2:O3430")
    Range("O2:O3430").Select

我需要一个 vba 代码,但不是 vlookup 工作表函数,我需要更快的东西。我也想循环它,直到 Sheet1 列“D”中有数据。先感谢您!

标签: excelvbaconditional-statementsvlookup

解决方案


这是一个不循环的示例,但应该比 VLOOKUP 更快:

Range("O2:O3430").Formula = "=INDEX('RIG MB'!B:B, MATCH(D2, 'RIG MB'!A:A, 0))

推荐阅读