我想使用VLOOKUP命令并使用表B中的范围(不在激活的A中)。调用新工作表会给我一个错误#34; '运行时错误1004'激活工作表类的方法失败"
Public Sub Creation()
Worksheets("A").Activate
Randomize
Dim code As String
Dim hamid As Variant
Dim Lookup_Range As Range
Code = 100032
Set Lookup_Range = Worksheets("B").Range("O1:P8")
On Error Resume Next
hamid = Application.WorksheetFunction.VLookup(code, Lookup_Range, 2, False)
On Error GoTo 0
End sub
我尝试使用With命令调用新工作表,但我没有成功。我是VBA的新手,所以请耐心等待。
答案 0 :(得分:0)
您的查找范围似乎在工作表B中。尝试在使用查找功能之前激活工作表B.我尝试在一个工作表上定义范围而另一个工作表遇到问题:
Public Sub Creation()
Worksheets("A").Activate
Randomize
Dim code As String
Dim hamid As Variant
Dim Lookup_Range As Range
code = 100032
'Try here:
Worksheets("B").Activate
Set Lookup_Range = Worksheets("B").Range("O1:P8")
On Error Resume Next
'or here:
Worksheets("B").Activate
hamid = Application.WorksheetFunction.VLookup(code, Lookup_Range, 2, False)
On Error GoTo 0
'also made 'Code' in lookup function 'code'.
End Sub