連載第3回目の目的
この連載第3回目では、Excel VBAによるWebサービスの呼び出しとJSONデータの解析についての手順を学びます。連載第2回目では、XML形式のデータを返すWebサービスを用い、データの解析を行っていましたが、今回はJSON形式のデータに対して解析を行います。Webサービスの多くは、取得できるデータをJSON形式で提供していますので、似たようなケースでは同様の手順でのデータ取得などに応用できるでしょう。 題材としては、気象庁の提供する天気予報APIを用います。このAPIは、公式にはWebサービスとして公開されているものではないですが、利用規約を守ることで誰でも無料で気象情報のデータを入手することができます。今回はこれを使用して、指定した気象区の天気予報を自動取得するExcelワークシートを作成します(図1)。
完成サンプルのソースコード
https://github.com/wateryinhare62/mynavi_excelvba_webservice
[NOTE]JSONについて
JSON(JavaScript Object Notation)とは、テキストベースのデータ交換フォーマットのひとつです。その名称からわかるように、JavaScriptにおけるオブジェクト記法をそのまま用いています。現在ではJavaScriptに限らず、多くのプログラミング言語で使用することができます。Key: Value形式の値や配列として、データの階層や繰り返しなどを表現します。WebサービスにおいてJSONは重要な位置を占めます。今回のWebサービスはJSON形式で取り込みますので、ぜひ心に留めておきましょう。
なお、本連載では動作確認をWindows 10 Pro(64bit)、Microsoft 365(Excel 16.0、VBA 7.1)で行っています。旧バージョンや単体のExcelで試す場合にはご注意下さい。