Excel VBA,使用VLOOKUp的变量

时间:2017-01-24 11:39:26

标签: excel-vba vlookup vba excel

我正在尝试向列添加VLOOKUP以将数据从一个工作表输入到另一个工作表。查找表上的表数组的大小会有所不同,所以我想在公式中添加一个变量。

这是我到目前为止所拥有的:

Sheets("Page1_5").Select

Dim CountryRow As Long
Cells(5, 1).Select
Selection.End(xlDown).Select
CountryRow = ActiveCell.Row
Sheets("Results").Select
Range("B2").Select
 ActiveCell.FormulaR1C1 = "=VLOOKUP(RC[-1],Page1_5!$A$5:$F$" & CountryRow & ",6,FALSE)"

将非常感谢任何协助

1 个答案:

答案 0 :(得分:0)

你应该坚持使用方法并使用它 - 在开始时你使用的是Cells(5, 1).Select,之后你使用的是Range("B2").Select,最后在VLookup内你同时拥有RC[-1],{ {1}}和$A$5:$F$" & CountryRow

此外,您无需使用SelectSelectionActiveCell,而是可以使用完全合格的工作表和范围。

尝试以下代码:

Option Explicit

Sub TestVlookup()

Dim CountryRow As Long

With Sheets("Page1_5")
    CountryRow = .Range("A5").End(xlDown).Row
End With

With Sheets("Results")
    Range("B2").Formula = "=VLOOKUP(A2,Page1_5!$A$5:$F$" & CountryRow & ",6,FALSE)"
End With

End Sub