Функцията FILTERXML връща точно определени данни от XML съдържание, като използва зададения xpath.
Забележка
- Функцията FILTERXML не е налична в Excel за уеб и Excel за Mac.
- Тази функция може да се покаже в галерията с функции в Excel for Mac, но разчита на функции на операционната система Windows, така че няма да върне резултати на Mac.
Синтаксис
FILTERXML(xml; xpath)
Синтаксисът на функцията FILTERXML има следните аргументи:
| Аргумент | Описание |
|---|---|
|
xml Задължителен |
Низ във валиден XML формат |
|
xpath Задължителен |
Низ в стандартен XPath формат |
Забележка
- Ако xml не е валидно, FILTERXML връща #VALUE! стойността на грешка.
- Ако xml съдържа пространство от имена с префикс, който не е валиден, FILTERXML връща #VALUE! стойността на грешка.
Примери
Този пример използва функцията FILTERXML за XML данни, върнати в клетка B2, които са предоставени от функцията WEBSERVICE в уеб заявката в клетка B1.
Данните от 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 вмъква фигурни скоби в началото и края на формулата вместо вас. За повече информация за формулите за масиви вижте Указания и примери за формули за масиви.
Можете също да използвате 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 или да получите поддръжка в общностите.