Vlookup属性在vba中不起作用

时间:2017-06-06 05:54:30

标签: excel vba excel-vba

我正在搜索一个变量selrow,它在一个工作表中包含字符串值。有时它显示错误

  

无法获取工作表函数类的vlookup属性

我还提出了错误处理代码,但仍然发生错误。

代码

this where error occurs

for i=1 to last_row
    'code
    selrow= range("D"&i)
    opening_inventory_today = 0
    On Error Resume Next
    opening_inventory_today = Application.WorksheetFunction.VLookup(selrow, ActiveSheet.Range("A4:B" & lr), 2, False)

1 个答案:

答案 0 :(得分:2)

使用On Error Resume Next未处理错误,您需要捕获VLookup无法找到selrow的案例,然后引发错误消息(或任何您想要的内容)。

尝试以下代码:

If Not IsError(Application.VLookup(selrow, ActiveSheet.Range("A4:B" & lr), 2, False)) Then
    opening_inventory_today = Application.VLookup(selrow, ActiveSheet.Range("A4:B" & lr), 2, False)
    ' rest of your code here

Else
    MsgBox "VLookup was unable to find " & selrow, vbInformation
End If