VBAでWebサイトのデータを取得
ExcelVBAでWebサイトのデータを取得
VBAをWebデータ取得に活用
このVBA。Excelの機能の範囲を超えて、実はいろんなことができちゃいます。それが一時、マクロウィルスとかで問題にもなったんですけどね(今はセキュリティ対策がいろいろとられています)。
例えば、Windowsのファイル操作はもちろんできますし、Excelから他のOffice製品、例えばWordのファイルを開いて、中の文章を操作することもできます。
さらに、Windowsの他のアプリケーションの操作もできます。例えば、WebブラウザーのInternetExplorerを操作して、Webサイトにアクセスしたり、データを取得することもできます。
今回、私の仕事で活用したいデータがWebサイトで公開されているのですが、その件数がとても多く、1つ1つ手作業で取得していったら、いつ終わるかわかりません。
そこで、ExcelVBAを使って自動でやってもらうことにしました。ただし、VBAでWebサイトのデータを取得するためには、Webサイトの構造や、HTMLの知識も必要になります。
行政書士を始めてから、VBAのプログラミングをするのは久しぶりだったのですが、記憶を呼び戻しつつ、楽しみながらプログラミングをすることができました。
VBAプログラム自体は以前、他で使用したものを修正して使うことにしたので、テスト・デバックまで行って完成するまでの日数は正味2日でした。
以前作ったプログラムを他に流用することで、素早く作ることができるのも、プログラムの良いところですね。
VBAを実行
データ取得においては、Webサイト側に過大な負荷をかけないように、十分に気をつけなければいけません。
手作業と同じくらいのアクセス間隔で、実行も1回で全部取得するのではなく、数回に分けて、時間に長めの間隔を空けて実行しました。
定期的に実行状況も監視しながら、VBAくんに頑張ってもらいました。
約1万件のデータを3日で取得でき、データを記録したCSVファイルが作成されました。
これが手作業なら、最短でも半月はかかると思いますし、途中で体力と気力の限界を迎えたかも。
VBAを使えてよかった♪( ´▽`)