Excel VBAでIE操作 | 便利な使い方例7選

更新日:2019年11月6日
公開日:2019年10月15日

IE操作に使えるVBAツール

皆さんが普段仕事で使用しているExcelやAccessといったMicrosoft Office製品と最もマッチしたプログラミング言語がVBA(Visual Basic for Applications)です。

経理や人事総務といった事務作業用のExcelツール開発でVBAが使用されることが多く、開発者ではない作業者もマクロ記録機能を使って作業自動化しているケースも現場で沢山見られます。

このような便利なVBAの使い方の一つにWEBブラウザであるIE(Internet Explorer)からキーワードを使って情報を検索・収集する「WEBスクレイピングツール」の開発があります。

このWEBスクレイピングツールですがWEB上で例を検索すると、せどりの商品価格や株価の検索・情報収集の例くらいしか例が掲載されておらず、WEBスクレイピングの魅力を伝えきれている記事が少ないことに気づきました。

Excel VBAのWEBスクレイピングツールはアイディア次第で可能性は広がり、いくらでも便利な機能を実装できます。

そこでこのページでは、ビジネスでもプライベートでも便利なVBAによるWEBスクレイピングツールの例を7つほど紹介します。

1.様々なニュースや情報サイトから、特定のキーワードを含む記事の一覧を収集して、Excelシートに集計するツール

皆さんが興味あるキーワードを基に、指定したニュースや情報サイトから指定した範囲の日付の記事を自動的に抽出して、Excel上に反映させて結果を表示するツールです。

Excel上のデータは記事タイトルとリンク付きURLを表示させるようにVBAコーディングしておけば、気になるタイトルの右にあるURLをクリックするだけで、すぐに対象の記事を閲覧できます。

ビジネスやスポーツ、ミュージシャンや芸能人、旅行や健康など、気になるキーワードで毎日ボタンをクリックすだけでタイムリーで厳選された情報が手にはいります。

2.ヤフーの乗換案内サイトから最安の交通費情報を経路と共に自動的に収集し、Excelの交通費請求フォーマットの各欄に自動入力するツール

人事総務で、従業員の交通費請求が正しいかどうかを効率よく確認することを目的としたツールです。

4月の新入社員の入社時期など、大規模な組織ほど沢山の交通費請求が一度に届き、確認しないといけません。

大変であれば、自動化してしまえば良い、ということでWEBスクレイピングが多いに役立つケースといえます。

特定の時期に多くの手作業が要求されてきたタスクに焦点をあててアイディアを出してみるとExcel VBAツールが役立つケースは少なくないでしょう。

3.ファイアウォールなどのログ情報を基に、Whoisのサイトから検索対象とするIPアドレスについてドメイン名などの情報を収集し、Excelシートに一覧化するツール

視点を変えて、ビジネスでもセキュリティに役立つツールを考えてみました。

個人事業や小規模企業であってもセキュリティに配慮したい方々は、現在のサイバー社会では増えているでしょう。

ファイアウォールでログ情報を取得してもIPアドレスだけでは、許可してよいパケットなのかどうかが分かりません。

ホワイトリストやブラックリストを作成するために、1件1件、Whoisのサイトでドメイン情報を確認したいところですが、手作業だと非常に時間がかかります。

そこで、Excel VBAによるWEBスクレイピングツールで自動化させてしまえば、大幅に作業時間を短縮できます。

情報も正確に取得でき、言うことなしです。

4.アマゾンサイトの注文履歴から月の注文取引の情報を必要な部分のみ収集し、Excelシートに自動入力させて、会計ソフトへ取り込む仕訳用のデータを作成するツール

実はアマゾンであっても「Amazonビジネス」サービスに会員登録して利用していれば、ログイン後のサイトから注文履歴に関する情報を取捨選択して、csvファイルでダウンロードすることが可能です。

しかし、一般の個人が使用するAmazonサービスだと、注文履歴のダウンロードサービスは存在しないので、会計ソフトの仕訳データを作成するには手作業かWEBスクレイピングツールか、ということになります(まあRPAもありますが)。

インターネットで検索すると、フリーソフトで存在するようですが、WEBスクレイピングツールを実行し完了した時点で、使用している会計ソフトに完全に対応したCSVファイルが出来上がるかは、難しいでしょう。

そこで、そのようなツールをExcel VBAを使って自前で開発してしまえば、月次や年度決算で随分楽に作業が進むことでしょう。

5.各国のサッカー情報サイトから、世界中の試合結果に関する情報を収集しして、Excelシート上にデータベース化していくツール

サッカー好きであれば、毎日、しかもリアルタイムで世界中のサッカーの結果(詳細な情報も含めて)をExcel上で一覧化してみることができれば、難しいツールであったとしても開発する価値はあるのではないでしょうか。

TOTOなどのサッカーくじの過去データを分析する際にも有用な情報となるでしょう。

かなりサイト内で情報が整理され網羅されたサイトも存在するようですが、Excel上でデータベース化した便利さと比較すると、分析のしやすさでは雲泥の差があるでしょう。

6.クックパッドなどのレシピ投稿サイトから、特定のキーワードでレシピ情報を収集し、材料や作り方と共に画像ファイルを表示させてスクリーンショットをキャプチャし、まとめてExcelシート上に整理して表示させるツール

キーワードも検索したいキーワードだけでなく、除外したいキーワード(嫌いな、若しくは食べれない食材など)もツール上に設定できるようにVBAで実装しスクレイピングできるようだと、より有用なツールになるでしょう。

その他、カロリー計算できる機能も別途Excel VBA上で機能追加すると、健康管理もできます。

クックパッドのレシピページのソースコードを見ると、食材と量の項目は別々にタグ設定してあるので、食材別のカロリーデータを用意しておけば、Excel上にレシピや料理画像だけでなく、カロリーを表示させることも可能です。

7.占いが掲載してある様々なサイトから本日の占い情報を収集し、自分に最も都合がいい結果をExcelシート上に反映するツール

WEBスクレイピングツールは、大量データの分析目的で利用されることが多いのですが、このような統計的に分析が難しい情報の収集でも役立つ場合があります。

むしろアナログや分析不可のデータとの組み合わせこそ、ニッチでアイディア次第で価値ある機能に繋がるかもしれません。

まとめ

以上、Excel VBAで実装できるIEのWEBスクレイピングツールについて例を紹介しました。

ここに掲載したツールは1時間位で思いついたアイディアを基にして紹介しています。

より、ゆったりとした長い時間をかければ、もっと便利なWEBスクレイピングツールは必ず見つかることでしょう。

最後までお読み頂きましてありがとうございました。

Amazon Kindle Unlimited

10冊まで同時に読み放題の電子書籍サービス(200万冊以上が対象)。

PC・ITカテゴリーの対象数は7,000以上。

スキル、ノウハウ吸収や話題作りにと、ライフ・クオリティを高めてくれます。

関連記事

Topへ戻る