やじうまの杜

日付、住所、文字列、辞書、翻訳……なんでもござれの「ExcelAPI」がスゴい

「Excel 2013」以降で利用できる「WEBSERVICE」関数と組み合わせて使う無料のWeb API

 「やじうまの杜」では、ニュース・レビューにこだわらない幅広い話題をお伝えします。

「ExcelAPI」のWebサイト

 いささか旧聞に属しますが、「はてなブックマーク」で「ExcelAPI」というWebサイトが話題になっていました。「Excel 2013」以降で利用できる「WEBSERVICE」関数を用いて、さまざまなデータを「Excel」に取り込むためのデータ提供を目的としたサイト――なのだそうです。

 このWebサイトの有用性を理解するには、実際に使ってみるのが早いでしょう。まずデスクトップ版の「Excel」を開き、適当なセルに以下の数式を入力します。

=WEBSERVICE("http://api.excelapi.org/post/address?zipcode=1000014")

 すると、「zipcode=」以降に入力した郵便番号に合致する住所がセルに表示されます。

郵便番号に合致する住所がセルに表示される

 この機能は「郵便番号から住所を取得」を使っており、ヘルプページを見ると、

  • URL:http://api.excelapi.org/post/address
  • zipcode:郵便番号(必須引数)
  • parts(オプション引数):都道府県(1)・市区町村(2)・町域(3)のいずれを返すかを指定

であることがわかります。なので、

http://api.excelapi.org/post/address?zipcode=(郵便番号)&parts=(パーツ引数)

という形式で問い合わせ先のURLを組み立て(引数がもう1つある場合は「&」で「(key)=(value)」をつなげてあげます)、「WEBSERVICE」関数に渡してあげるだけです。シンプルで、しかも便利ですね!

ヘルプページでエンドポイントURLと引数を調べて、それをもとに問い合わせURLを組み立てる

 機能も非常に豊富で、執筆時現在、以下がサポートされています。基本的に「Excel」向けにデータが加工されているため、「Google スプレッドシート」にはあまり向いていませんが、ちょっとした加工で使えるようになるとの由。

サポートされている機能
外部サイト
  • JSON形式のWebAPIをExcel形式に変換(メインとなる機能)
日付時刻
  • 特殊な日付型の統一
  • 祝日の一覧を取得
  • 祝日の名称を取得
  • 祝日の有無を判定
  • 閏年を判定
郵便・住所
  • 住所から都道府県コードを取得
  • 住所から市区町村コードを取得
  • 住所の統一
  • 住所の分割
  • 郵便番号から住所を取得
  • 郵便番号から住所の読み仮名を取得
  • 住所の漢数字を算用数字に変換
  • 住所から郵便番号を取得
電話番号
  • 文章から電話番号を抽出
  • 国際電話番号から国名コードを取得
  • 国際電話番号に変換
  • 電話番号が有効か否かを判定
  • 国内電話番号に変換
数字
  • 素数の個数
  • 素数か否かを判定
  • 漢数字を算用数字に変換
言語
  • ひらがなをカタカナに変換
  • カタカナをひらがなに変換
  • 全角カタカナを半角カタカナに変換
  • 半角カタカナを全角カタカナに変換
  • ひらがなを漢字に変換
  • 漢字をひらがなに変換
  • 文字列が条件に一致するかを判定
  • 文字列を抽出
  • 文字列を置換
  • 文字列を指定文字で分割
辞書
  • 英和辞典
  • Wikipediaの記事の概要を取得
翻訳
  • 日英翻訳
  • 英日翻訳
  • 日中翻訳
  • 中日翻訳
  • 日韓翻訳
  • 韓日翻訳
通貨
  • 仮想通貨の価格を取得
  • 通貨の価格を取得
法人情報
  • 法人番号を取得
  • 法人の基本情報を取得
  • 法人の財務情報を取得
個人
  • 名前の姓名の分割
その他
  • パスワードを作成

 いずれもスクレイピング禁止のWebサイトは利用しておらず、一般に公開されているAPIや、作者が自動生成したデータをもとにしているのだそうです。アクセス頻度に制限も設けられていないので、(節度を守ったうえで)バリバリ使わせていただきましょう!

 ちなみに、Web版の「Excel」はサポートされていないので注意してください。