【初心者向け】VBAでWeb自動化!SeleniumとChromeDriverの使い方・仕組み・注意点まとめ

アイキャッチ画像

業務効率化やデータ収集のために、Excel VBAでWebサイトを自動操作したいと思ったことはありませんか?
そんなときに登場するのが「Selenium」と「ChromeDriver」です。

でも、これって何?どう使うの?どこに置くの?と疑問が尽きないはず。

この記事では、VBAでWeb自動化を始めたい方に向けて、SeleniumとChromeDriverの仕組み・使い方・注意点を初心者目線で徹底解説します。
Pythonなど他言語との違いや、実際のコード例、トラブル回避のポイントも紹介するので、ぜひ最後まで読んでみてください!


目次

Seleniumとは?Web操作を可能にするライブラリ

Seleniumの概要

Selenium(セレニウム)は、Webブラウザをプログラムで自動操作するためのライブラリです。
元々はWebアプリのテスト自動化のために開発されましたが、現在ではスクレイピングや業務自動化にも広く使われています。

ライブラリって何?

Seleniumはプログラムから呼び出して使う機能の集合体(ライブラリ)です。
Excel VBAやPythonなどのコードからSeleniumを使うことで、ブラウザ操作を自動化できます。

対応言語は多彩

SeleniumはVBA専用ではありません。以下のような言語でも利用可能です:

  • Python(最も人気)
  • Java
  • C#
  • JavaScript(Node.js)
  • Ruby
  • VBA(Selenium Basicを使用)

VBAで使うには「Selenium Basic」が必要

VBAからSeleniumを使うには、Selenium Basicというラッパー(橋渡しツール)をインストールする必要があります。
これは、VBAからSeleniumの機能を呼び出せるようにするための専用パッケージです。

Selenium Basicのインストール手順(簡易版)

  1. GitHubなどから SeleniumBasic をダウンロード
  2. インストーラーを実行してインストール
  3. chromedriver.exe をインストールフォルダに配置(後述)

VBAでの基本コード例

Dim bot As New WebDriver

bot.Start "chrome"
bot.Get "https://www.google.com"
bot.FindElementByName("q").SendKeys "Selenium VBA"
bot.FindElementByName("btnK").Click

このように、人間が行う操作をコードで再現できるのがSeleniumの魅力です。


ChromeDriverとは?SeleniumとChromeの橋渡し役

WebDriverの役割

Seleniumがブラウザを操作するには、「WebDriver」と呼ばれる仲介役が必要です。
これは、Seleniumとブラウザの間で命令をやり取りする通訳のような存在です。

ChromeDriverの正体

chromedriver.exe は、Google Chrome専用のWebDriverです。
Seleniumが「Chromeを開いて検索して」と命令すると、ChromeDriverがそれを受け取り、Chromeに伝えます。

chrome.exeとの違い

項目chrome.exechromedriver.exe
正体Chromeブラウザ本体Selenium用の操作仲介ツール
役割ユーザーが直接使うプログラムがChromeを操作するために使う
起動方法手動でクリックSeleniumが自動で起動

ChromeDriverの配置場所と注意点

どこに置けばいい?

VBAでSelenium Basicを使う場合は、chromedriver.exe を以下のフォルダに配置するのが一般的です:

C:\Users\ユーザー名\AppData\Local\SeleniumBasic

このフォルダに置くことで、Selenium Basicが自動的にChromeDriverを認識してくれます。

他言語の場合は?

Pythonなど他の言語では、chromedriver.exe の場所をプログラム内で指定するか、環境変数でパスを通す必要があります。
複数の環境で使う場合は、共通のフォルダ(例:C:\WebDrivers)に置いておくと便利です。


ChromeDriverに付属するファイルの意味

ChromeDriverをインストールすると、以下のようなファイルが一緒に展開されることがあります:

ファイル名役割
LICENSE.chromedriver利用規約(削除しても問題なし)
README.txt簡単な説明書(英語)
chromedriver.log実行時のログ(エラー解析に使える)
chromedriver_win32.zipダウンロード元の圧縮ファイル(展開後は不要)

基本的には chromedriver.exe だけあれば動作しますが、ログやREADMEはトラブル時に役立つので保管しておくのがおすすめです。


ChromeDriverのバージョン管理に注意!

ChromeDriverは、Chrome本体のバージョンと一致している必要があります
例えば、Chromeがバージョン116なら、ChromeDriverも116対応版を使う必要があります。

バージョン確認方法

  • Chromeのバージョン確認:chrome://settings/help
  • ChromeDriverのバージョン確認:コマンドプロンプトで chromedriver.exe –version

自動更新ツールもある

Python環境では webdriver-manager というライブラリを使えば、ChromeDriverを自動でダウンロード・更新できます。
VBA環境では手動更新が基本ですが、バージョン管理を意識しておくとトラブルを防げます


実用例:VBAでログイン処理を自動化する

Seleniumを使えば、ログインフォームへの入力も自動化できます。以下はその一例です:

bot.Get "https://example.com/login"
bot.FindElementById("username").SendKeys "your_id"
bot.FindElementById("password").SendKeys "your_password"
bot.FindElementById("login-button").Click

このように、IDやパスワードの入力、ボタンのクリックも自動で行えるため、定型業務の効率化に最適です。


まとめ:SeleniumとChromeDriverはセットで理解しよう

用語正体役割
SeleniumライブラリWebブラウザを自動操作する
Selenium BasicVBA用ラッパーVBAからSeleniumを使えるようにする
chrome.exeChromeブラウザ本体実際にWebページを表示する
chromedriver.exeChrome用ドライバーSeleniumとChromeの橋渡しをする

おわりに:Web自動化の第一歩を踏み出そう

VBAでWeb操作を始めると、最初は「Selenium?ドライバー?どこに置くの?」と戸惑うことが多いですが、仕組みを理解すればとても強力なツールになります。疑問を一つずつ解消しながら進める姿勢が、スムーズな自動化への近道です!

次回は「ファイルダウンロードの自動化」や「複数ページの巡回処理」など、さらに実践的な内容にも挑戦してみましょう✨
この記事が、あなたの自動化ライフの第一歩になれば嬉しいです!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次