
§1
ビジネステクノロジー活用講座
■Web画面をExcelで操作する
毎日の業務の中で、ブラウザ画面を見ながら情報を検索したり、その結果を抽出してファイル保存するような作業時間はどれくらいあるだろうか。
おそらく、多くの人はその単純ともいえるが、非常に重要な作業に、1日のうち何時間も費やしているかと思われます。
時間を単純な作業に費やすほど、無駄なことはありませんし、それよりも前に、そもそもの仕事のやる気が失せてしまいます。
そんなときに、ブラウザの入力操作が、Excelに蓄積してある検索リストを自動操作して、Web検索できたらどれほど便利かと誰でも考えたことがあるのではないでしょうか。
そうなのです。そんなに難しそうなことが、プログラミング経験が浅い、あるいは初心者でも、すぐにできるようになります。
以下の示すような、本の数十ステップのVBAプログラムをExcelに貼り付けるだけで。
Time is money! 説明よりも先に、早速作ってみましょう!
ここでは、弊社が提供しています企業情報をWebから収集するためのプログラムをベースに、その一部分を抜粋してご紹介しています。
(全体が必要な方は別途お問い合わせください)
【必要な環境】
・Windows2007以上
・Excel2003以上
・ブラウザ/IE8以上
【Web業務自動操作(例)】
・取得したい企業リストをExcelで保有しているので、そのデータを利用して
・法務協会オンラインから法務局登記情報を自動取得する
【必要なプログラム】
Web操作自動化を実現するために、Excelに貼り付けるソースコードはたったのこれだけ。

Option Explicit Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long) Private Sub CommandButton1_Click() Dim objIE As Object Dim buf As String Dim i As Long Set objIE = CreateObject("InternetExplorer.Application") objIE.Visible = True objIE.Navigate "http://www1.touki.or.jp/gateway.html" Call waitIE(objIE) Application.Visible = False buf = Application.InputBox("終了する場合はqを入力、実行はそのままOKボタン押下", , , 1, 1, , , 2) If buf <> "q" Then i = 1 Do While Cells(i, 1) <> "" And buf <> "q" objIE.Document.getElementById("q").Value = Cells(i, 1) Sleep 100 objIE.Document.all("btnG").Click Call waitIE(objIE) Sleep 100 i = i + 1 buf = Application.InputBox("終了する場合はqを入力、実行はそのままOKボタン押下", , , 1, 1, , , 2) Loop End If objIE.Quit Set objIE = Nothing Application.Quit End Sub Sub waitIE(ie) Do While ie.Busy = True Or ie.ReadyState <> 4 DoEvents Loop Sleep 100 End Sub
これだけのプログラムを用意すれば、毎日のWeb操作は驚くほど簡素化されます。早速試みてください。