我在下面的这个语句中遇到语法错误,它结合了If,IsError和VLOOKUP语句 - 我一直在尝试一切......任何人都知道为什么?
If Application.Worksheetfunction.IsError(VLOOKUP(cell.Value,'[Codes.xlsx]Processing Codes'!ProcessingCodesTable,5,FALSE)) = FALSE then
感谢任何帮助将不胜感激!
答案 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