こんな方法もある

Range("Z1") = WorksheetFunction.VLookup( 略 )

結果をどこか空いてるセルに入れてしまえば、エラーでも止まらずに結果を判定することができる
もうひとつ、試したことはないけど

WorksheetFunction.Iferror( WorksheetFunction.Vlookup ( 略

みたいな方法でもエラーで停止するのを回避できそうな気がするけど、Vlookupで止まるかなあ