Excel2013以降 ~ 住所から郵便番号を取得するWEBAPIがらみのワークシート関数の「WEBSERVICE」関数。もちろん郵便番号から住所もゲットできますし、そのほかに、いろんなことができます。作者の方に感謝です。
※まだ書きかけです。すみません。
※間違ってたらすみません。
※メモ書きなので、自分でも意味不明な箇所も多いです。ごめんなさい。
関連記事
Excelの郵便番号変換ウィザードやAccessの住所入力支援で使う最新の郵便番号辞書や郵便番号変換エンジンについて
関連Webページ
Excel 2013で追加された「WEBSERVICE」関数を使って、マクロを使わずWeb APIを利用する。
Excel2000~2003、2007、2010、などで使えていた「郵便番号変換ウィザード」は、「顧客名簿などの”住所情報”から郵便番号をセル上にリストアップできる」という点で非常に便利でした。
でも、その後、大変残念ながら、その機能がなくなってしまいました。
でも最近、その代わりの機能を作ってくださった方がいらっしゃるのを見つけました。
本当に感謝しかありません。
『タイトルで「Excel専用」と書きましたが、GoogleSpreadseetなどExcel以外からでも使用できます。』とのことでもありました。Excel以外からも使えるようです(どうやるのかはわかりませんが(^^))
参考URL(Yahoo知恵袋)
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q13269752528
「顧客名簿などの”住所情報”から郵便番号をセル上にリストアップできる」ということを、
「関数」として実現してくれます。
Web経由のExcel関数なので、少し速度が遅いかもですが、でもとても便利です。
「ExcelAPI」 ~ 当サイトについて
https://excelapi.org/info/
「機能一覧」~ 郵便番号から住所を取得
https://excelapi.org/docs/post/address/
オートフィルで複数の住所から郵便番号を割り出せます。
IMEを使う方法だとひとつひとつやらないといけないのでとっても面倒くさいですが、このWEBAPIなら、非常にラクに処理ができます。
郵政省から郵便番号情報をダウンロードして自分でそういう仕組みをつくることからも解放されます。
「#CALC!」などと出たら、
F9キーを押すか、
しばらく待つか、
そのセルを選択→F2→Enter、
ファイルを閉じて開く、
などをしてみます。
「#CALC!」などと出るのも面倒なので、やはり、
「値として貼り付け」を、「別の列か、その列」でやっておくといいと思います。
郵便番号はハイフンが入っていてもOKっぽいです。
●「A1」セルが少し中途半端な住所のとき、そこから郵便番号を取得する数式
=WEBSERVICE("http://api.excelapi.org/post/zipcode?address="&ENCODEURL(A1))
※都道府県や丁目が無くてもおおむねいいみたい。丁目が無いといけない住所の場合は、丁目まで指定する?たぶん。
●「A1」セルが郵便番号のとき、そこから住所を取得する数式
=WEBSERVICE("http://api.excelapi.org/post/address?zipcode="&ENCODEURL(A1))
このサイトがなくなるといけないので、いずれも取得できた住所情報や郵便番号などを、「値として貼り付け」を、「別の列か、その列」でやっておく。
ほかにも、祝日の取得とか、住所の漢数字を算用数字に変換、フリガナの取得、など、色んなことが「Excel関数」として、できるようです。
「住所から、都道府県名だけを抽出する」方法は例えば以下。
https://forest.watch.impress.co.jp/docs/serial/exceltips/1361007.html
A1セルが住所情報だとすると、以下の数式で都道府県名だけが抜き出せるそうです。
=IF(MID(A1,4,1)="県",LEFT(A1,4),LEFT(A1,3))
このWEBAPIは、バージョン2013以降でしか使えないようですが、もちろん現行バージョンの2021でも使えるわけですから、全く問題ありません。
2007以前の場合は、「Advzip.dic」などを探してきて、VMWareなどの仮想マシン上で「郵便番号変換ウィザード」を使えばOKです。
「Advzip.dic」や「郵便番号変換ウィザード」は、冒頭の関連記事を読めばある程度のことはわかると思います。
以下のようなこともできるようなので、非常に便利に活躍してくれると思います。
JSON形式のWebAPIをExcel形式に変換
特殊な日付型の統一
祝日の一覧を取得
祝日の名称を取得
祝日の有無を判定
閏年を判定
住所から都道府県コードを取得
住所から市区町村コードを取得
住所の統一
住所から郵便番号を取得
文章から電話番号を抽出
国際電話番号から国名コードを取得
国際電話番号に変換
電話番号が有効か否かを判定
国内電話番号に変換
住所の地図を取得
などなど。その他、驚くべき機能もあります。
本WEBAPIは、作者の方が公開してくださっている間は、感謝の気持ちをもって、使えます。
でもあまりアクセスしすぎず、ゲットした郵便番号は「値」での貼り付けで上書きしてしまいましょう。その他の変換で得たデータも同様です。
でないと、作者の方のサーバに負荷がかかってご迷惑をかけてしまいます。
(以下のWebページ参照)
【注意】エクセルWEBSERVICE関数でのアクセス発生件数に注意
- 投稿タグ
- Excel, Excel操作の基礎, トラブル解決, ビジネスパソコンの基礎, ビジネス一般常識, メンテの基礎, 自動化