您好我正在尝试在VBA中使用VLookUp功能。 它带有错误,"无法获取worksheetFunction类的#VyookUp属性" 它试图从名为13.09.2017
的工作表中获取数据Sub VLookUp()
Dim i As Integer
Dim k As Integer
For i = 1 To 10
ThisWorksheet.Cells(1 + i, 11) = WorksheetFunction.VLookUp(Cells(1 + i, 2), Worksheets("13.09.2017").Range("B2:K11"), 10, False)
Next
End Sub
enter image description here 我希望你能帮助我
答案 0 :(得分:0)
ThisWorksheet
不是VBA对象库的一部分。您可能需要ThisWorksbook
这是怎么做的,如果你想使用ActiveSheet(这不建议,但它有效):
Sub VLookUp()
Dim i As Integer
Dim k As Integer
With ThisWorkbook.ActiveSheet
For i = 1 To 10
.Cells(1 + i, 11) = WorksheetFunction.VLookUp(.Cells(1 + i, 2), _
Worksheets("13.09.2017").Range("B2:K11"), 10, False)
Next
End with
End Sub
答案 1 :(得分:0)
除了ThisWorksheet
问题之外,您的代码将在第一个实例中中断,其中vlookup在范围内找不到值。如果这是您将要运行的唯一代码,则添加On Error Resume Next
语句以避免错误。
Sub VLookUp()
Dim i As Integer
Dim k As Integer
On Error Resume Next
With ActiveSheet
For i = 1 To 10
.Cells(1 + i, 11) = WorksheetFunction.VLookUp(.Cells(1 + i, 2), _
Worksheets("13.09.2017").Range("B2:K11"), 10, False)
Next
End With
End Sub