我在vba中编写一个宏来从一个工作表中查找值并返回数据并将其保存在另一个工作表中。但我收到编译错误“编译错误:子或函数未定义”。
我尝试在引用下选择“解算器”,但我仍然收到此错误。
这是我的代码::
For i = 1 To j
temp_var = config_sht_name(i)
MsgBox temp_var
For Each cell In Worksheets(Sheet_Name).Range("A9:A37")
On Error Resume Next
'Ret = Application.WorksheetFunction.VLookup(cell, Worksheets("config_sht_name[i]").Range("A9:E37"), 5, 0)
Ret = VLookup(cell, Indirect(Concatenate("'", temp_var, "'!")), 5, 0)
On Error GoTo 0
If Ret <> "" Then
Application.ActiveCell.Offset(0, i) = Ret
End If
MsgBox Ret
Next
Next i
我收到“连接”和“间接”功能的错误。 请建议我缺少什么。
- Sanjeev
答案 0 :(得分:0)
如果您确定使用以下行的逻辑
Ret = VLookup(cell, Indirect(Concatenate("'", temp_var, "'!")), 5, 0)
我建议使用
代替Conconate功能 str1 = "'" & temp_var & "'!"
Ret = VLookup(cell, Range([Indirect(str1)]), 5, 0)