2022年、Internet Explorerのサポート終了→SeleniumBasicに置き換えた開発を進めましたが、
SeleniumBasicのインストールが厳しい環境のユーザー様も多く存在しました。
その為、自前でWebDriverを動かす「WebDriverVBA」の開発を進めました。
ある程度動くよう(SeleniumBasicに比べたらまだまだですが)になったため、
同じようにお困りのユーザーの方に、ソフトライセンス販売の形で提供致します。
WebDriverVBAを使用した際のサンプルコードを以下に記載します。
Edge/Chromeで指定した要素まで画面スクロールさせる
Excel VBAマクロでWebDriverVBAを使用して、自動操作する際、IE自動操作と異なり注意が必要です。
要素が見えていないとコードの途中で止まってしまう恐れがあります。
画面の最大化や指定要素までスクロール(本記事)で回避をします。
Edge/Chromeで指定した要素まで画面スクロールするサンプルコード
JavaScript(ExecuteScript)で強制的にスクロールさせるイメージです。
Public Sub test_scrollTo()
Dim driver As webDriverVBA
Set driver = New webDriverVBA
Dim val As Variant
'■ドライバーを起動
Call driver.Start(vcChrome)
'■目的のサイトへ移動する
Call driver.Navigate("https://vba-create.jp/")
'■ウインドウを最大化
Call driver.MaximizeWindow
'■右下の検索窓まで移動(スクロール)
Call driver.ScrollTo("//*[@id=""search-4""]/form/input", vcXpath)
End Sub
参考
- WebDriverVBAまとめページ(ページが増えれば公開します。)
WebDriverVBAについて
Excel VBAでSeleniumBasicを使わずにEdge/Chromeでスクレイピングするためのツールです。
SeleniumBasicがインストールできない環境の方にもスクレイピングをお助けします。
料金などについてはこちらからお問い合わせくださいませ。
コメント