Applies ToExcel for Microsoft 365 Excel 2021 Excel 2019 Excel 2016 Excel 2013

FILTERXML 函數會使用指定的 xpath 從 XML 內容傳回特定數據。

  • Excel 網頁版 和 Mac 版 Excel 不提供 FILTERXML 函數。

  • 此函數可能會出現在 Mac 版 Excel 的函數庫中,但取決於 Windows 作業系統的功能,因此不會在 Mac 上傳回結果。

語法

FILTERXML(xml, xpath)

FILTERXML 函數語法具有下列引數。

引數

描述

xml   

必要

有效 XML 格式的字串

Xpath   

必要

標準 XPath 格式的字串

  • 如果 xml 無效,FILTERXML 會傳回 #VALUE! 錯誤值。

  • 如果 xml 包含的命名空間含有無效的前置詞,FILTERXML 會傳回 #VALUE! 錯誤值。

範例

  1. 此範例針對傳回單元格 B2 的 XML 數據使用 FILTERXML 函數,這是由儲存格 B1 中 Web 查詢上的 WEBSERVICE 函數結果所提供。

    FILTERXML 函數的範例

    FILTERXML 中的數據會傳回至單元格 B3:B5 和 C3:C5,並顯示Wikipedia上三個最近更新的查詢結果,以及它們在UTC中的更新 (時間,也就是「標準通用時間」) 。

    單元格 B3:B5 包含公式 =FILTERXML (B3,“/rc/@title”) 。

    單元格 C3:C5 包含公式 =FILTERXML (B3,“/rc/@timestamp”) 。

    如果您有目前版本的 Microsoft 365,則您可以在輸出範圍左上角的儲存格中輸入公式,然後按 ENTER 以確認公式為動態陣列公式。 否則,請先選取輸出範圍,在輸出範圍左上角的儲存格中輸入公式,然後按 CTRL+SHIFT+ENTER 以進行確認,以舊的陣列公式輸入公式。 Excel 會為您在公式的開頭和結尾處插入大括號。 如需有關陣列公式的詳細資訊,請參閱陣列公式的規則和範例

  2. 您也可以搭配 ENCODEURLWEBSERVICE 函數使用 FILTERXML。 例如,您可以使用 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 技術社群中的專家,或在社群中取得支援。

另請參閱

ENCODEURL 函數

WEBSERVICE 函數

Need more help?

Want more options?

探索訂閱權益、瀏覽訓練課程、瞭解如何保護您的裝置等等。

社群可協助您詢問並回答問題、提供意見反應,以及聆聽來自具有豐富知識的專家意見。