Office関連

[Excel 2013]Web関数を使ってXMLデータから複数のレコードをまとめて抽出する。

Excel 2013で追加された「WEBSERVICE」関数を使って、マクロを使わずWeb APIを利用する。」や「[Excel 2013]Web関数を使ってマッシュアップ」でも紹介している、Excel 2013で追加されたWeb関数を使うとWeb上のデータを簡単に活用できるのでとても便利です。
今回はこのWeb関数を使って、XMLデータから複数のレコードをまとめて抽出する方法を紹介します。

  1. セルB2に次の数式を入力します。
  2. Office2013_46_01

  3. セルB3からセルB7までを選択します。
  4. Office2013_46_02

  5. 数式バーに次の数式を入力し、[Ctrl] キーと [Shift] キーを押しながら [Enter] キーを押します。
  6. Office2013_46_03

  7. セルB3からセルB7にデータが入力されます。
  8. Office2013_46_04

上記では、WEBSERVICE関数を使って「Yahoo!天気・災害 – 東京都の天気」から取得したXML(RSS)をセルB2に格納し、FILTERXML関数を配列数式で使うことによって、セルB2のXMLからtitle要素の値をまとめて取得しています。

この方法は「Automatically plot multiple pieces of online data in your Excel spreadsheet」で紹介されていたもので、私自身これまで“FILTERXML関数を配列数式で使う”という発想が無かったのでとても衝撃的でした。
Web APIの結果(XML)やRSSから、こうも簡単に情報が取得できるのはExcel 2013ならではですね。
やっぱり、とても便利です!

■ 関連Webページ

・Excel 2013で追加された「WEBSERVICE」関数を使って、マクロを使わずWeb APIを利用する。
//www.ka-net.org/blog/?p=1933
・[Excel 2013]Web関数を使ってマッシュアップ
//www.ka-net.org/blog/?p=2462

「ストーリーで学ぶ Excel VBAと業務改善のポイントがわかる本」の見本誌をいただきました。前のページ

「クラシックスタイルメニュー」の誤検知?次のページ

関連記事

  1. Office関連

    Excel REST APIをPowerShellから呼び出す方法

    以前Excel REST APIをVBAから呼び出す方法を紹介しました…

  2. Office関連

    [VBA]自動的にフォントサイズを調整する疑似テキストボックス

    前回と同様、環境依存つながりでmougの給湯室に書いたコードを載せてお…

  3. Office関連

    UI Automationの参考資料

    VBAからUI Automationを扱う際に参考になりそうな資料への…

  4. Office関連

    Officeアプリケーションの「最近使用したファイル」を削除するVBScript

    WordやExcel等のOfficeアプリケーションでは、下記サイトに…

  5. Office アドイン

    [Office用アプリ]マニフェストファイルで多言語対応させる。

    Office用アプリの各種設定を定義するXMLマニフェストファイルです…

コメント

  1. この記事へのコメントはありません。

Time limit is exhausted. Please reload CAPTCHA.

Translate

最近の記事

アーカイブ

PAGE TOP