数式でやるなら郵便番号データをダウンロードしてきて検索すればいいんだけど、毎回それをやるのは面倒だし、かといって WebAPIを使う方法だといちいち再計算がかかるので都合が悪い。数十件くらいなら、Power Queryでやってしまえばいいかなと思う。
今回は「郵便番号検索」のキーワード検索を使わせてもらう。
まずはテーブルを読み込む。
ソース = Excel.CurrentWorkbook(){[Name="テーブル1"]}[Content],
型の変更 = Table.TransformColumnTypes(ソース, {{"郵便番号", type text}}),
読み込んだテーブルに「住所」列を追加。
住所列の追加 = Table.AddColumn(
型の変更, "住所",
each Web.Page(Web.Contents(url&[郵便番号]))
{0}[Data]{0}[Children]{1}[Children]{0}[Text],
type text
),
この時、最初だけアクセスの確認を求められるので「接続」をクリック
これで基本問題ないけど、郵便番号に複数候補がある場合、変な表記になることがあるので「(」より前だけ表示させる設定を追加する。
住所列の編集 = Table.TransformColumns(住所列の追加, { "住所", each Text.Start(_, Text.PositionOf(_&"(", "(")) })
これで完成。