Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

Excel VBA + SeleniumBasic でブラウザ操作

環境

windows10
Excel(Office365)
Google Chrome ver 83.0.4103.106

SeleniumBasicのインストール

ChromeDriverのインストール

Chromeのバージョンに合わせたものをインストール
https://chromedriver.storage.googleapis.com/83.0.4103.39/chromedriver_win32.zip

インストールしたフォルダを展開し、chromedriver.exeを、
SeleniumBasicフォルダ(C:\Users[ユーザ名]\AppData\Local\SeleniumBasic)に貼り付け。
(元のchromedriver.exeと入れ替える)
chromedriver.exeを実行。

設定

Excel起動
VBE起動
ツール => 参照設定 => sを押す => Selenium Type Libraryにチェック

Googleを開く

test1.xlsm
Sub test()
    Dim Driver As New Selenium.WebDriver
    Driver.Start "chrome"
    Driver.Get "https://www.google.com/"
    Stop
End Sub

セルに入力された値でgoogle検索

test1.xlsm
Sub search()
    Dim Driver As New Selenium.WebDriver
    Dim searchWord As String

    'セルの値を取得
    searchWord = Range("D9").Value
    ' chromeを開く
    Driver.Start "chrome"
    ' googleへアクセス
    Driver.Get "https://www.google.com/"
    ' 検索窓に値を入力
    Driver.FindElementByXPath("//*[@id='tsf']/div[2]/div[1]/div[1]/div/div[2]/input").SendKeys searchWord
    ' 検索ボタンをクリック
    Driver.FindElementByXPath("//*[@id='tsf']/div[2]/div[1]/div[3]/center/input[1]").Click
    Stop
End Sub

Googleを開き、別タブでYahooを開く

test1.xlsm
Sub openGoogleAndYahoo()
    Dim Driver As New Selenium.WebDriver
    Dim ks As New Keys

    ' Chromeを開く
    Driver.Start "chrome"
    ' Googlを開く
    Driver.Get "https://www.google.com/"

    ' 新しいタブを開く
    Driver.ExecuteScript "window.open()"
    ' タブを切り替える
    Driver.SwitchToNextWindow
    ' Yahooを開く
    Driver.Get "http://www.yahoo.com/"
    Stop
End Sub

参考

VBAのスクレイピングを簡単楽にしてくれるSelenium
https://excel-ubara.com/excelvba4/EXCEL_VBA_401.html

Excelからセレニウム(Seleniumbasic)を使ってブラウザ操作をオートメーション!
https://shigetin.com/20181220/246

shocci7
自動化していきたい
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away