2.参考サイト
ExcelのVBAでインターネットエクスプローラ(IE)を制御する方法については、ネット上に様々な参考サイトがある。今回対象となるサイト、特許情報プラットフォーム(J-PlatPat)はJavaScriptで動的に内容が書き換わるサイトであるため、ちょっとハードルが高いが、主として次のようなサイトを参考にさせていただくことで、ともかくも意図した通りに動くツールを作ることができた。これらのサイトがなければ、手も足も出なかったと思うので、本当に感謝したい。
(1)VBAのIE制御入門
VBAでIEを立ち上げ、情報を入力したり、リンクをクリックしたり、データをダウンロードしたり、といった基本操作の数々が非常によくまとまっていて、大変参考になる。
(2)VBAでIEを操作してJavaScriptで動作するWebページをスクレイピング
J-PlatPatのように、表示内容がJavaScriptで動的に書き換わるようなページをIEで操作する方法についてまとまっている。
(3)Excel VBAでInternet Explorerを操作してみよう(中編)
VBAで実際のサイトを操作する際の手順などが具体的に記載されていて参考となる。
3.事前設定
J-PlatPatのサイトをIEで操作するためには、以下に示すいくつかの事前設定が必要となる。(1) はExcelのVBAでIEを制御するための設定であり、(2) はIEでJ-PlatPatを巡回するための設定である。
(1) ExcelのVBAへのライブラリの設定
・VBAの編集画面にて、「メニュー」→「ツール」→「参照設定」を選択
・「Microsoft HTML Object Library」と「Microsoft Internet Controls」の2つにチェックを付け、「OK」ボタンを押す。
※ 参考:VBAでIE制御するためのライブラリ追加(参照設定)
(2) IEの設定
①ポップアップブロックの設定
これは、J-PlatPatのサイトで、検索結果のリンクをクリックして、文献表示画面が新たなタブ(ウインドウ)で開くときに、下図の赤枠で囲ったような「ポップアップブロック」のメッセージ画面が出るのを回避するための設定である。
・IEを立ち上げ、「ツール」→「インターネットオプション」→「プライバシー」タブを開く
・「ポップアップブロックを有効にする」にチェックを入れ、「設定」ボタンをクリック
・「許可するWebサイトのアドレス」欄に “*.inpit.go.jp” と入力し、「追加」ボタンをクリックし、「閉じる」ボタンをクリック、さらに「OK」ボタンをクリックする。
※ 参考:Internet Explorer 11 で、ポップアップブロックを有効/無効に設定する方法
②スクリプトによる貼り付け処理の設定
これは、J-PlatPatのサイトで、文献表示画面において「URL」ボタンをクリックしたときに、下図のような「クリップボードへのアクセス許可」のメッセージが出るのを回避するための設定である。
・IEを立ち上げ、「ツール」→「インターネットオプション」→「セキュリティ」タブを開く
・「レベルのカスタマイズ」ボタンをクリックし、「スクリプトによる貼り付け処理の許可」の設定で「有効にする」にチェックを入れ、「OK」ボタンをクリック
・「このゾーンの設定を変更しますか」に「はい」をクリック、さらに「OK」ボタンをクリックする。
※ 参考:Internet Explorerで「クリップボードのアクセス許可」ダイアログを表示させなくする方法
以上で事前準備は完了したので、次回から実際にVBAでIEを制御し、J-PlatPatを操作する方法について記載する。