前置きはさておいて
VBAでEdge操作するために環境構築した手順を書いてみます

①SeleniumBasicのインストール
    https://florentbr.github.io/SeleniumBasic/
    https://github.com/florentbr/SeleniumBasic/releases/download/v2.0.9.0/SeleniumBasic-2.0.9.0.exe
②SeleniumBasic付属の古いDriverを更新
    ※これをしないとVBA実行時タイムアウトエラー
    ②-1自分のEdge(ブラウザ)のVersionに対応したドライバをダウンロード
        https://learn.microsoft.com/ja-jp/microsoft-edge/webdriver-chromium/?tabs=c-sharp
        https://developer.microsoft.com/ja-jp/microsoft-edge/tools/webdriver/
    ②-2 ②-1のファイルを Seleniumフォルダ内のDriverと差し替え

   パスは通常 C:\Users\●●●\AppData\Local\SeleniumBasic.edgedriver.exe
③Selenium参照設定
    vbe-ツール-参照設定-Selenium Type Library
④.NET Framework 3.5の有効化
    ※↑これをしないとVBA実行時オートメーションエラー

今回主に参考にさせて頂いたサイトは↓こちらです。<(_ _)>
    https://vba-create.jp/vba-selenium-install/
    https://www.ka-net.org/blog/?p=11677
   
①~④の手順を踏んでようやく
edgeの起動
指定URLへ移動
といった初歩のコードが動くようになりました~。

ほっとしたのも束の間、セレクトボックスからプルダウンで値を選択するという
割と基本的っぽいコードが通らない。
で見てみるとVBAから開いたサイトでは
手動で開いた時とサイトの見た目も微妙に違うし
「開発者ツールで調査する」で表示される内容も違う。
ブラウザに
"Microsoft Edge は、自動テスト ソフトウェアによって制御されています。"
とか表示されていたので、これが原因か?と思いググって
driver.SetCapability "ms:edgeOptions", "{""excludeSwitches"":[""enable-automation""]}"
を入れてみるも今だ解決せず。

うーん。引き続き闘います。

 

<追記 ここから>

その後「セレクトボックスからプルダウンで値を選択する」という基本コードは

通るようになりました。

”Microsoft Edge は、自動テスト ソフトウェアによって制御されています。"

と表示される事とは全然関係なかったみたいです。

当初なぜエラーになったのかは分かりません。。結果オーライと言っていいのやら。

<追記 ここまで>


~以下、この記事を書くことになった経緯とかるいボヤキです ^^;

ブラウザ操作の自動化って正直気が進まない、
関わりたくない仕事の1つだったりするのですが
関わりたくないから関わらずにすむ訳でもなく。

今回のミッションは
ie時代に動いていた(と思われる)
VBAで書かれたツールをEdge用に書き直してね
というもの。
ああ、断れるものなら断りたい(←後ろ向き)

ざっと調べたところvbaでedge操作するには自分の場合は
A.Selenium
B.DOM
の2択でした。
(他にはSendKeyを使う、なんて案もありました)

この2択で迷った末、なんとなく情報量が多そうなSeleniumを選択。
この選択、はたして吉だったのでしょうか。。