FILTERXML 関数

適用先
Excel for Microsoft 365 Excel 2024 Excel 2021 Excel 2019 Excel 2016

FILTERXML 関数は、指定された xpath を使用して XML コンテンツから特定のデータを返します。

  • FILTERXML 関数は、Excel for the web および Excel for Mac では使用できません。
  • この関数は Excel for Mac の関数ギャラリーに表示される場合がありますが、Windows オペレーティング システムの機能に依存するため、Mac では結果を返しません。

構文

FILTERXML(XML, XPath)

FILTERXML 関数の書式には、次の引数があります。

引数 説明
xml
必須
有効な XML 形式の文字列
XPath
必須
標準 XPath 形式の文字列

  • XML が無効な場合は、エラー値 #VALUE! が返されます。
  • XML に無効なプレフィックスを持つ名前空間が含まれている場合は、エラー値 #VALUE! が返されます。

使用例

  1. この例では、セル B2 で返される XML データに対して FILTERXML 関数を使用します。このデータは、セル B1 の Web クエリに対する WEBSERVICE 関数の結果によって提供されます。
    FILTERXML 関数の例
    FILTERXML からのデータはセル B3:B5 と C3:C5 に返され、Wikipedia で最後に更新された 3 つのクエリ結果とその更新時刻 (UTC では「協定世界時」) が表示されます。
    セル B3:B5 には、数式 =FILTERXML(B3,"//rc/@title") が含まれています。
    セル C3:C5 には、数式 =FILTERXML(B3,"//rc/@timestamp") が含まれています。

    Microsoft 365 の現在のバージョンをお持ちの場合は、出力範囲の左上のセルに数式を入力し、Enter キーを押すだけで、数式が動的配列数式として確定されます。 それ以外の場合、最初に出力範囲を選択し、出力範囲の左上のセルに数式を入力し、CTRL+SHIFT+ENTERキーを押して確定し、従来の配列数式として数式を入力する必要があります。 Excel によって、数式の先頭と末尾に中かっこが挿入されます。 配列数式の詳細については、「配列数式のガイドラインと例」を参照してください。

  2. また、 FILTERXML を ENCODEURL 関数および WEBSERVICE 関数と組み合わせて使用することもできます。 たとえば、markitondemand.com API サービスを使用して、会社の株式に関する情報を返すことができます。
    =WEBSERVICE("http://dev.markitondemand.com/MODApis/Api/Quote/xml?symbol="&ENCODEURL(C2))
    セル C2 に株式ティッカーがある場所。
    その後、FILTERXML 関数を使用して、その株に関する特定のデータを抽出できます。 たとえば、セル C2 の株価ティッカーの最終価格を取得するには、次を使用します。
    =FILTERXML(WEBSERVICE("http://dev.markitondemand.com/MODApis/Api/Quote/xml?symbol="&ENCODEURL(C2)),"//QuoteApiModel/Data/LastPrice")

補足説明

Excel 技術コミュニティの専門家にいつでも質問するか、コミュニティでサポートを受けることができます。