ExcelでWebへのアクセスは可能である。

少し探せばWebサービスのAPIにアクセスしてデータを取得する、ということも紹介されているし、私自身インターネット上の公開データベースにアクセスしてデータを取得してきたり、ということもある。

参考まで、処理として後者のようなことは一般的には行わない方がいい。Selectしか許可しないようにしていても、とんでも処理時間が掛かるSQL文でのリクエストは防げないからだ。よって、面倒でも処理効率のよいSQL文やストアードプロシージャを用いたAPIを作成し、それを公開した方がいい。

で、話を戻す。
今のところこのブログではWebアクセスの記事を書いていない。
ちゃんと調べていないので良い記事にならない、ということもあるが、最大の理由は「BtoCでのAPIをそれほどVBAで解説しなくない」からだ。
サーバーを運用管理した経験があれば、トラフィック量は気になるだろう。システム屋が業務で「サーバー負荷を掛ける処理」を提供することは稀だと思う(仮に設計段階でそういうことをしても、テスト段階でNGが出るだろう/それをスルーするようであれば欠陥システムでは?と疑いたくなる)が、VBAのようにユーザー部門も取り扱える言語では大量トラフィックを流すことに抵抗感がなかったり、テスト環境を持っているわけでもないので間違ってループなどで大量トラフィックを送りつけたりしてしまうのではないか?と思うからだ。

そりゃ、サーバー側でも対策し、大量トラフィックはスパムと解釈させることも可能である。が、受け取り側で対策するのではなく、送信側でも心がけたいものだし、もしかするとスパムと解釈されるとそのIPからは受け付けない、という措置を受けることもあるだろう。

こうしなければならない、ということはないけれど、それがマナーってものだろう。