【VBA×Selenium×初学者向け】テキストボックスの入力方法について
みなさんこんにちは。
Webスクレピングをしているとテキストボックス内に文字列を入力する場面に遭遇します。
ただ、今回の内容は複雑な関数などは必要なく、既存のメソッドを使用するだけで簡単に取得できる内容です。
基本となる内容なので、しっかり覚えてスキルアップしていただければと思います。
この記事はこんな人におすすめ
この記事はこんな人におすすめです!
- VBAプログラミング:初学者~初級者
- Webスクレイピング:初学者~初級者
- コードだけサクッと取得したい人
- 効率の良いコードを書きたい人
といったところでしょうか。
VBA×Seleniumに関する初学者向けの記事
VBA×Seleniumに関する初学者向けの小ワザやテクニックなどの参考記事については、過去にご紹介しておりますのでそちらもどうぞ。
今回の記事を読むメリット
テキストボックスの入力方法を知るケースの一例は以下の通りです。
- VBAの基礎スキル定着
- 時間短縮と作業効率化
- 正確な操作の実現
といったところでしょうか。
本件は日常業務でも使用する機会が非常に多いかと思いますので、
一度やり方を覚えてしまえばかなり有効的なスキルになるかと思います。
かつ、スクレイピングを数多く実施していると誰しもが経験する内容かと思いますので、
忘れずに覚えていくことが作業効率につながりますし、
一度やり方を覚えてしまえば今後も活かせる内容になるかと思います。
手順紹介
参考サイト
今回は当ブログ内にある問い合わせフォームの入力を例にします。
CHECK!!
※問合せフォームについてはこちら⇒問い合わせフォームリンク

また、今回実施する内容は以下の通りです。
- サイト内のテキストボックスに文字列を入力する
- 入力したテキストボックスにクリアをする
- 再度、改行文字を含めた状態で別の文字列を入力する

コード紹介
Sub GetWebInfoSample()
Dim Driver As New Selenium.WebDriver
' ブラウザを起動する
Driver.Start "Chrome" 'クロームブラウザを立ち上げます。
Driver.Get "https://epsilon-delta-blog.com/contact/" '問い合わせフォームにアクセスする
Dim strXpath As String
' メッセージ本文のXpathを取得
strXpath = "/html/body/div[3]/div/div/div[1]/article/div/div[1]/form/p[10]/span/textarea"
Driver.FindElementByXPath(strXpath).SendKeys "サンプル題名を入力"
Driver.FindElementByXPath(strXpath).Clear ' 文字列クリアします
Driver.FindElementByXPath(strXpath).SendKeys "サンプルメッセージを入力" & vbCrLf & "改行も可能です"
Stop
Driver.Quit
End Sub
コード解説
10行目にブレークポイントを貼って、1つずつ処理を解説します。
11行目:”サンプル題名を入力”という文字列を入力します。

12行目:テキストボックスの内容をクリアします。
テキストボックスに前回の入力内容が残っていて、再入力する際に有効です。

13行目:改行文字を含めて入力します。

最後に
いかがでしたでしょうか。
Seleniumを使用していると予測不能な謎エラーや疑問に遭遇することが多々あります。
ですので、しっかりマスターして基本を抑えながらと実装できると業務効率も格段に向上するかと思います。
そのきっかけとして、少しでも参考になればと思います。
開発依頼について
ココナラでWebスクレイピング開発サービスを出品しております。
自分で開発をしようと思ったけど、VBAでのネット記事が少なく困っている方も多いかと思います。
そんな方はいつでもお気軽にご相談ください。
また、本ブログからご依頼いただいた方については割引特典がございますので、
ご不明点と合わせてメッセージをいただけると幸いです。
Excelにてブラウザ操作自動化ツールを作成します その作業、webスクレイピングを使って自動化しましょう!
Webスクレイピング以外にもWebアプリの開発サービスも出品しております。
こちらについても、本ブログからご依頼いただいた方については割引特典がございますので、
お気軽にご相談ください。
スモールスケールのWebアプリ開発します 先ずはスモールスケールのWebアプリから始めませんか?