【VBA】IE操作でボタンをクリックする2つの方法

今回は、VBAでIEを操作することをスクレイピング等と言いますが。

Left Caption

主婦

VBAを活用してIEを操作したい!
web上の検索ボタンを自動でクリックしたい!

そんな悩みにお答えして、IE上のボタンを自動クリックする方法について解説していきましょう。

 

クリックしたボタンの名称を見つけよう!

 

クリックしたボタンの名称を取得するために、下記2つの点に注力しましょう!

 

Internet Explorer(IE)でサイトを開く

・Internet Explorer(IE)でサイト開きましょう。

注意するポイントとして、必ずブラウザは、Internet Explorerで開いて下さい。Chrome等ではなく、IEの方がソースコードを確認しやすいです。

 

IE画面ソースからプログラムを確認

Internet Explorerで開いたら、「ツールバー」の「表示」から「ソース」を選択しましょう。

IE側のソースコードの確認の仕方

「ツールバー」⇒「表示」⇒「ソース」

 

ここで、サイトのソースの一覧を見ることができますので、ここから自動クリックしたいボタン名を探しましょう!

 

参照設定を設定しよう!

続いて、VBAでIEを操作するためには、IEを操作するための参照設定の設定が必要です。

Excelを開いて参照設定の設定の仕方についてみていきましょう。

IEを操作する際には、そのプログラムを動作する環境が必要です。

その設定がこの「参照設定」で行うことができます。

参照設定箇所

マクロ ➡ ツール ➡ 参照設定

 

から変更しましょう。

<IE操作に必要な参照設定について>

  • IE control 6.0
  • Microsoft Internet Controls

 

このどちらか、もしくは両方にチェックを入れて、エクセルを保存して、再度立ち上げましょう。

これで、IEのプログラミング環境が整いました。

逆に言うと、この設定をしておかないと、プログラミングを記述してもエラーになりますので必ず設定を忘れないように!

 

ボタンを自動クリックする2つの方法とは

ボタンを自動クリックする方法には、2つの方法があります。

<ボタンを自動クリックする2つの方法>

  • .Doucument.All.項目名.click」でボタンに名称がある場合
  • ボタンに名称がない場合、Inputタグから探しだす方法

 

1.ボタンに名称がある場合

こちらをご参照下さい。

 

このように、ボタンに名称が登録されている場合には、

.Doucument.All.項目名.click」でボタンをクリックすることが可能です。

この際ボタンの名称がついているのであれば、項目名を取得できるのです。しかし、ボタン名が登録されていない、表示されていない場合があります。

 

2.ボタンに名称がない場合

※但し、この場合は項目名がきちんと登録されていた場合です。項目名がない場合には、これは使えませんので、もう一つの方法があります。

 

それは、Inputタグ」から一つ一つのボタンを探していき、ボタンの名称から取得する方法です。

 

スクレイピングをしたいサイトのソースコードから探してみましょう。

 

プログラムソースコードの書き方

それでは、実際に、プログラムソースコードの書き方についてみていきましょう。

ボタンをクリックするイベントの書き方には、多数ありますが、まずこの2つの方法が試してみましょう。

下記をご参照下さい。

1.ボタン名がある場合のソースコードの書き方

【プログラムソースコードの書き方①】

<strong>objIE.Document.All.ボタン名.Click'クリック</strong>

まずは、ソースコードを確認してみましょう。もしソースコードに、ボタン名が、submitの記載近くにある場合には、それがボタンの名称です。

この場合には、上記のメソッドが利用可能です。

 

2.ボタン名がない場合ソースコードの書き方

【プログラムソースコードの書き方②】

 

まずは、IEの起動をObject変数にセットしましょう。そして、実際にNavigateで画面を表示します。

ここまでは、IEの起動と同じです。

そして、その画面を開いた後で、「.Doucument.All.項目名.click」で、そのボタンを取得し、選択することが可能です。

しかし、ボタン名がある場合には、この処理は可能ですが、

ボタン名の記載がない場合には、①の処理ではエラーが起こる可能性があります。その場合には、②の処理で記述してみましょう。

 

※但し、ここのソースコードの記述は、あくまで自動でクリックするための処理を記述しております。ブラウザ待機時間等について別にて記載しておりますので、ご承知おきくださいね。

動作環境について
あくまで上記記述での動作環境は、

<動作環境>

OS:windows7
Office:Office2007

 

で動作確認済みです。

※異なる環境で動作する保証はございません。あらかじめご了承下さい。状況に応じてお問い合わせ下さい。

 

まとめ

このように、自動でボタンをクリックする方法は、「objIE.Document.All.ボタン名.click」でボタンを押下することが可能です。

但し、ソースコードの記載によっても取得が難しい場合がありますので、上記の処理を参考にしながら挑戦してみくてださいね。^^

IE操作であれば、テキストボックスにデータを入力する方法も必要ですので、こちらも必要に応じて確認しておきましょう。

【VBA】IE操作・スクレイピングでテキストボックスに値を入力してみよう!

 

<楽天Web検索の自動クリックツール>

楽天Web検索を自動でクリックできる機能を開発しました。これにより、何度も手動で検索しなくても、自動で検索してくれるので、手軽にポイントをゲットできるVBAによる仕組みです。noteのページにて期間限定価格で100部ご紹介しております。ご興味のある方は下記ページより詳細をご確認下さい。^^

noteページはこちら

 

ご不明点などございましたら、いつでもご連絡下さい。

もしよろしければフォローして下さい。ブログの励みになります(^^)

【おすすめ:WordPressテーマ 「WING(AFFINGER5)」について
     ※ブログを始めるなら絶対おすすめ【特典あり】


私も新たなサイト【育チルnet」にて、検索エンジンの上位の多くを占めると言われるSEO対策に強いWordpressテーマを導入してみました。

無料テーマから有料テーマにしただけなのに、0円だった収益が2~3万円まで上がったんです!

正直驚きでした!実際に利用した所感は、デザイン性能がかなり整っていますし、表示速度もやっぱりかなり速いです。人気なWordpressテーマなだけはあると感じました。

無料のテーマでも私は悪いとは思っていませんが、やはり検索エンジンからの評価はだいぶ違いました。

初めて数ヶ月ですが、もうすでに検索エンジンから大きく表示されるようになっています。

どうせやるなら、しっかりgoogle社からの評価を受けられる整えられた環境でブログ運営する方が絶対にいいと感じたため、当サイトをご覧下さった皆様にもお伝えさせて頂きました!

新たにWordpressテーマをご検討方は、当サイトからのご購入でしか受け取れない5つの特典も付いていますので、ご興味のある方はぜひご利用下さい。
購入者限定特典はこちら

レビュー

【当サイト限定特典付き】購入はこちら



 ←ためになったら押してね^^