先達はあらまほしきことなり

デジタルテクノロジーの活用と展望

インターネットと連携できるVBA

HTTP接続

VBAにはインターネットから情報を取得したり、インターネットに情報を発信したりできる機能がある。ブラウザを介して接続することもできるし、ブラウザを介さないで接続することもできる。インターネットとつながるにはHTTPというプロトコルで情報をやりとりする。

Web API

インターネットに接続して何が便利なのか?大きく2つある。1つ目はWebサイトの情報を取得することだ。URLを指定して目的のサイトに行き、目的の項目を探し、その項目の情報を取得する。株価や商品の価格など、多品目で複数サイトにまたがるリアルタイムの情報を知りたい場合、自動で取得できるアプリケーションがあると便利だ。2つ目はインターネットを介して目的のサーバー内部に接続することだ。あるサーバーの内部から情報を受け取りたい、または情報を届けたい場合だ。WebサイトまではHTTP接続で行ける。目的のWebサイトのさらに内部に接続するにはWebAPIという機能を使う。WebAPIはそのサーバー内部とやりとりするためのプロトコルのようなものだ。より正確に言えば、サーバーに格納されているアプリケーションを遠隔操作できる機能だ。離れた場所にあるアプリケーション同士がHTTPプロトコルでインターネット空間を介して、WebAPIで通信するということが至る所で行われている。そういう技術をExcelAccessでも実装できる。

Googleサービスと連携

実際にインターネット上のどういうサービスと連携できるのか。例えば、Googleカレンダー。注文を管理するシステムがAccessで開発されているとする。注文情報の1つとして、発送日を登録する仕様になっている。注文情報の登録確定ボタンを押下すると、自動でGoogleカレンダーにも登録されると便利だ。Googleカレンダーを操作できるWebAPIはGoogleが公開しているので自由に使える。このようにHTTPとWebAPIを利用すればExcelAccessでインターネット上のサービスと自由に連携できるのだ。