有条件地检查VBA中的XPath是否正确

有条件地检查VBA中的XPath是否正确,vba,excel,if-statement,xpath,selenium-webdriver,Vba,Excel,If Statement,Xpath,Selenium Webdriver,我的代码使用XPath从网站获取邮政编码,然后将其分配给变量。这个变量被传递到我的Copy to Clip sub,该sub负责在将值粘贴到Excel单元格之前将值复制到我的计算机剪贴板中。但问题是,我的代码将针对不同的网页多次运行上述代码,有些网页在指定的XPath中没有邮政编码 这会导致代码崩溃,所以我希望我可以用if语句修复这个问题。我的问题是,我是否可以有条件地搜索网页上是否存在指定的XPath 类似于 Postcode = driver.findElementByXPath("//di

我的代码使用XPath从网站获取邮政编码,然后将其分配给变量。这个变量被传递到我的Copy to Clip sub,该sub负责在将值粘贴到Excel单元格之前将值复制到我的计算机剪贴板中。但问题是,我的代码将针对不同的网页多次运行上述代码,有些网页在指定的XPath中没有邮政编码

这会导致代码崩溃,所以我希望我可以用if语句修复这个问题。我的问题是,我是否可以有条件地搜索网页上是否存在指定的XPath

类似于

Postcode = driver.findElementByXPath("//div[@id='T_F2']/fieldset/div[1]/div/div[4]/span[2]").Text

CopytoClip (Postcode)

Range("b" & X).PasteSpecial xlPasteAll

如果元素不存在,将抛出异常(或错误)。在Java和C#等语言中,异常是NoTouchElementException

如果元素不存在,您应该使用错误处理使代码运行。这里有几个链接可以帮助您找到正确的方向:

If driver.findElementByXPath("...").DoesNotExist

Then

   Run rest of code...