JavaScript
GoogleSpreadSheet

Googleスプレッドシートで郵便番号から住所を表示する関数 その2

概要

セルに郵便番号を入力することで、住所を表示してくれる関数があったらなぁと思って書いたプログラムが動かなくなっていたので、zipcloudさんのAPIを使って書き直してみました。

APIの詳細につきましてはこちらをご確認ください。
http://zipcloud.ibsnet.co.jp/doc/api

※本スクリプトをご使用の際はzipcloudさんの利用規約をご確認の上、ご利用者さん各自の責任の元でご利用ください。

使い方

下記をスクリプトエディタにコピペすれば関数を利用できるようになります。
=ZIP_ADDRESS("154-0004","address1")
みたいな感じ。

利用できるデータの種類はzipcloudさんのWEBサイトでも確認できますが次の通りです。
zipcode 郵便番号
prefcode 都道府県コード
address1 都道府県名
address2 市区町村名
address3 町域名
kana1 都道府県名カナ
kana2 市区町村名カナ
kana3 町域名カナ

function ZIP_ADDRESS(zip,part)
{
  zip = zip.replace(/\-/g, '');
  var response = UrlFetchApp.fetch('http://zipcloud.ibsnet.co.jp/api/search?zipcode=' + zip);
  var res = JSON.parse(response.getContentText());
  if (res.status == 400) {
    return res.message;
  }

  if (res.results) {
    var address = res.results[0];
    return (address[part]) ? address[part] : "";
  } else {
    return "該当するデータがありません";
  }
}