Webページの要素の有効・無効チェック【Selenium Basic × ExcelVBA】
Web要素の有効か無効かのチェックを調べるにはIsEnabledプロパティを使用
Trueであれば有効・Falseであれば無効でdisabled属性で無効処理にされている場合Falseが返ってくる
有効になるまでDoLoopで空ループさせ、待機させる方法で実践
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
実際に使用したサンプルコード
Option Explicit
Public Sub 要素のチェック()
'driverでChromeDriverを使える準備
Dim driver As New Selenium.ChromeDriver
'driverの記述を省略
With driver
'指定したWebページへ接続
.Get "https://vba.company/samplepage/7/"
'イミディエイトウインドウに要素の有効無効を出力
Debug.Print .FindElementById("mukou").IsEnabled
'要素が有効になるまでループ
Do Until .FindElementById("mukou").IsEnabled
'セレクターで指定してクリック
.FindElementByCss("#post-494 > div > button").Click
'OSに制御を渡す
DoEvents
Loop
'指定した要素にaaaaと入力
.FindElementById("mukou").SendKeys "aaaa"
End With
Stop
End Sub