如果,IsError,VLOOKUP语法错误 - 任何人都知道为什么?

时间:2014-09-03 17:42:11

标签: excel vba

我在下面的这个语句中遇到语法错误,它结合了If,IsError和VLOOKUP语句 - 我一直在尝试一切......任何人都知道为什么?

If Application.Worksheetfunction.IsError(VLOOKUP(cell.Value,'[Codes.xlsx]Processing Codes'!ProcessingCodesTable,5,FALSE)) = FALSE then

感谢任何帮助将不胜感激!

2 个答案:

答案 0 :(得分:0)

VLOOKUP is not一个VBA函数。

上一个问题“Writing a VLOOKUP function in vba”提供了多种解决方法。看起来您可以使用Application.WorksheetFunction.VLookup代替VLOOKUP

答案 1 :(得分:0)

你或许可以适应这样的事情

Sub lookupPC()
On Error GoTo ErrHandler
Dim result As Variant
Dim ws As Worksheet
Set ws = ActiveWorkbook.Sheets("Processing Codes")
For Each cell In Range("a1:a100")
  If IsError(Application.WorksheetFunction.VLookup(cell.Value, ws.Range("ProcessingCodesTable"), 5, False)) = False Then
    result = Application.WorksheetFunction.VLookup(cell.Value, ws.Range("ProcessingCodesTable"), 5, False)
  End If
 MsgBox (result)
Next cell
ErrHandler:
 MsgBox (cell.Address & " value not available in table")
End Sub