Vlookup的VBA错误处理

时间:2018-01-08 07:58:50

标签: excel vba

我为vlookup开发了代码,但是我在处理错误时遇到了麻烦。 Sheet1上的列的值正在Sheet2的列中查找。结果显示在Sheet3上。

有2个实例会出现错误:

  1. 如果查找值列中的单元格为空

  2. 如果查找值不在表数组

  3. 如果查找值的单元格为空,我希望结果显示空白。如果查找值不是空白但表格数组中缺少,我希望单元格显示"缺少"。现在代码设置为总是给空白。

    我到目前为止的代码如下。我是excel公式专家和VBA新手。任何帮助将不胜感激!

    {{1}}

1 个答案:

答案 0 :(得分:0)

抓住#NA!错误,您可以使用IFNA工作表函数。就像那样:

With Application.WorksheetFunction
    Sheets("Sheet3").Cells(Fund_Row, Fund_Clm) = .IfNa(.VLookup(cl, Table2, 1, False), "Missing")
End With

你可以双向处理空白。简单的是向你正在发布的表中添加空格。稍微复杂的是在代码中添加另一个:

If cl.value = "" then ...