Функция ФИЛЬТР.XML

Функция FILTERXML возвращает определенные данные из XML-содержимого с помощью указанного xpath.

Примечание

  • Функция FILTERXML недоступна в Excel для Интернета и Excel для Mac.
  • Эта функция может появиться в коллекции функций в Excel для Mac, но она зависит от функций операционной системы Windows, поэтому она не будет возвращать результаты на Mac.

Синтаксис

ФИЛЬТР.XML(xml; xpath)

Аргументы функции ФИЛЬТР.XML указаны ниже.

Аргумент Описание
Xml
Обязательно
Строка в допустимом формате XML
Xpath
Обязательно
Строка в стандартном формате XPath

Примечание

  • Если xml недопустим, ФУНКЦИЯ FILTERXML возвращает #VALUE! (значение ошибки).
  • Если xml содержит пространство имен с недопустимым префиксом, ФУНКЦИЯ FILTERXML возвращает #VALUE! (значение ошибки).

Примеры

  1. В этом примере используется функция FILTERXML для XML-данных, возвращаемых в ячейке B2, которая предоставляется результатами функции WEBSERVICE в веб-запросе в ячейке B1.
    Пример функции FILTERXML
    Данные из FILTERXML возвращаются в ячейках B3:B5 и C3:C5 и отображают три последних обновленных результата запроса в Википедии и время их обновления (в формате UTC, "Скоординированное универсальное время").
    Ячейки B3:B5 содержат формулу =FILTERXML(B3,"//rc/@title").
    Ячейки C3:C5 содержат формулу =FILTERXML(B3,"//rc/@timestamp").

    Примечание

    Если у вас есть текущая версия Microsoft 365, можно просто ввести формулу в левую верхнюю ячейку выходного диапазона, а затем нажать клавишу ВВОД , чтобы подтвердить формулу как формулу динамического массива. Иначе формулу необходимо вводить с использованием прежней версии массива, выбрав диапазон вывода, введя формулу в левой верхней ячейке диапазона и нажав клавиши CTRL+SHIFT+ВВОД для подтверждения. Excel автоматически вставляет фигурные скобки в начале и конце формулы. Дополнительные сведения о формулах массива см. в статье Использование формул массива: рекомендации и примеры.

  2. Вы также можете использовать FILTERXML в сочетании с функциями ENCODEURL и WEBSERVICE . Например, вы можете использовать службу API markitondemand.com для возврата сведений о акции компании:
    =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 или получить поддержку в сообществах.