VBA上でSeleniumWebDriverを使用して実行したときのXPath指定の要素取得について
ExcelVBAの初心者です。
SeleniumWebDriverで、サイトからログインし別ウインドウで開かれるサイトの操作を行いたいです。
その際、別ウインドウで開かれる要素をXPathでクリックしたいのですが、下記の「VBAエラー」が生じます。
下記の「HTML」上の「拾いたい要素」を取得したいのですが、どのようにすれば取得できるか、お教えいただきたく存じます。
「VBA」では太字のところで立ち止まっている状況です。。。
-------------------------------------------------------------------VBA-----------------------------------------------------------------------
Dim driver As New Selenium.WebDriver
Public Sub メニュー選択()
driver.Start "Edge"
driver.Get "ログインURL"
driver.FindElementsByName("ユーザーID")(1).SendKeys "ユーザーID"
driver.FindElementsByName("パスワード")(1).SendKeys "パスワード"
driver.FindElementsByName("ログインボタン")(1).Click
driver.SwitchToNextWindow
Dim 該当値 As Variant
Dim 格納値 As WebElement
Debug.Print driver.FindElementByXPath("//a[contains(text(), '該当するテキスト')]").Text
For Each 該当値 In driver.FindElementByXPath("//a[contains(text(), '該当するテキスト')]")
Debug.Print 該当値.Text
If 該当値.Text = "該当するテキスト" Then
Set 格納値 = 該当値.Value
格納値.Click
Exit For
End If
Next
End Sub
-----------------------------------------------------------------------HTML------------------------------------------------------------------
<a class="font2" href="javascript:top.toggleFolder('0101',1)" onmouseover="javascript:top.checkMouseMove('');return true" style="text-decoration:none">
<img class="font2" src="cont.gif" width="16" height="16" alt="" onmouseover="javascript:top.checkMouseMove('');return true" border="0">
<img class="font2" src="closed.gif" width="14" height="14" onmouseover="javascirpt:top.checkMouseMove('');return true" alt="" border="0">
該当するテキスト
</a>
-------------------------------------------------------------------------VBAエラー-----------------------------------------------------------------
実行時エラー '7':
NoSuchElementError
Element not found for XPath=//a[contains(text(), '該当するテキスト')]
---------------------------------------------------------------------------拾いたい要素-------------------------------------------------------------
outerHTML = 該当するテキスト
XPath = /html/body/table/tbody/tr/td/nobr/pre/a[2]/text()