VBAで
・ブラウザを自動化
できます!
この記事では
・ブラウザ「Chorome」を自動化
する方法を紹介します!
自動化するために
・SeleniumBasic
・ChoromeDriver
をインストールします!
※インストール手順も記載します。
前提
・OSがWindowsであること
・ブラウザ「Chorome」がインストール済みであること
SeleniumBasicのインストール
「Selenium」によりブラウザ「Chorome」を自動化できます。
VBA用の「Selenium」である「SeleniumBasic」をインストールします。
以下にアクセスして「SeleniumBasic-X.X.X.X.exe」をクリックし、インストーラーをダウンロードする。
ダウンロードしたインストーラー「SeleniumBasic-X.X.X.X.exe」をダブルクリックする。
「Next」をクリックする。
「I accept ~」にチェックを入れて「Next」をクリックする。
「Next」をクリックする。
「Install」をクリックする。
「Finish」をクリックする。
ブラウザ「Chorome」のバージョン確認
後続でブラウザ「Chorome」のバージョンに対応した「ChoromeDriver」をインストールします。そのためにブラウザ「Chorome」のバージョンを確認します。
ブラウザ「Chorome」のアドレスバーに「chrome://version」を入力してEnterキーを押す。
ChoromeDriverのインストール
インストール済みのブラウザ「Chorome」のバージョンに対応した「ChoromeDriver」をインストールします。
以下にアクセスする。
インストール済みのブラウザ「Chorome」のバージョンに対応したリンクをクリックする。
※私のPC上のブラウザ「Chorome」のバージョンは「111.0.5563.147」であるため、今回は「ChromeDriver 111.0.5563.64」をクリックします。
OSに対応したリンクをクリックする。
※私のPCはWindowsのため、今回は「chromedriver_win32.zip」をクリックします。
ダウンロードした「chromedriver_win32.zip」を展開して、中にある「chromedriver.exe」をコピーし「C:\ユーザー\[ユーザー名]\AppData\Local\SeleniumBasic」に上書きする。
参照設定の追加
VBAで「SeleniumBasic」を使用できるようにします。
VBEの「ツール」-「参照設定」をクリックして、「Selenium Type Library」にチェックを入れ「OK」をクリックする。
VBAコード
ここでは例として
・Google(https://www.google.com/)にアクセスして
・検索ボックスに文字列「VBA実践ガイド」を入力し
・検索ボタンをクリック
します。
Option Explicit
Sub sample()
Dim url As String
Dim inputString As String
Dim driver As ChromeDriver
'URL
url = "https://www.google.com"
'検索ボックスに入力する文字列
inputString = "VBA実践ガイド"
'Chromeを起動
Set driver = New ChromeDriver
'URLを表示
driver.Get url
'検索ボックスに文字列を入力
driver.FindElementByName("q").SendKeys inputString
'ElementNotVisibleErrorを回避するため1秒待つ
driver.Wait 1000
'検索ボタンをクリック
driver.FindElementByName("btnK").Click
'3秒待つ
driver.Wait 3000
'Chromeを閉じる
driver.Close
Set driver = Nothing
End Sub
実行結果
ブラウザ「Chorome」を自動化することができました。
※Googleにアクセス、検索ボックスに文字列「VBA実践ガイド」を入力、検索ボタンをクリックできました。
注意点
ブラウザ「Chorome」は頻繁にアップデートされます。その結果、ブラウザ「Chorome」のバージョンと「ChoromeDriver」のバージョンが合わなくなる可能性があります。
バージョンが合わなくなった場合、改めてブラウザ「Chorome」のバージョンに合った「ChoromeDriver」を取得して該当フォルダに上書きしてください。
(2023/6/2追記)
VBAで「ChoromeDriver」のバージョンを自動更新することもできます。
詳細は以下の記事をご確認ください。