Funkce FILTERXML vrací určitá data z obsahu XML pomocí zadaného xpathu.
Poznámky:
-
Funkce FILTERXML není k dispozici v Excel pro web a Excel pro Mac.
-
Tato funkce se může zobrazit v galerii funkcí v Excel pro Mac, ale závisí na funkcích operačního systému Windows, takže nevrátí výsledky na Macu.
Syntaxe
FILTERXML(xml;xpath)
Syntaxe funkce FILTERXML má následující argumenty:
Argument |
Popis |
---|---|
xml Povinný |
Řetězec v platném formátu XML |
xpath Povinný |
Řetězec ve standardním formátu XPath |
Poznámky:
-
Pokud xml není platný, vrátí funkce FILTERXML hodnotu #VALUE! chybová hodnota.
-
Pokud xml obsahuje obor názvů s neplatným předponou, vrátí funkce FILTERXML #VALUE! chybová hodnota.
Příklady
-
Tento příklad používá funkci FILTERXML u dat XML vrácených v buňce B2, kterou poskytují výsledky funkce WEBSERVICE ve webovém dotazu v buňce B1.
Data z funkce FILTERXML se vrátí v buňkách B3:B5 a C3:C5 a zobrazí tři naposledy aktualizované výsledky dotazu na Wikipedii a čas jejich aktualizací (v utc , "Coordinated Universal Time").
Buňky B3:B5 obsahují vzorec =FILTERXML(B3;"//rc/@title").
Buňky C3:C5 obsahují vzorec =FILTERXML(B3;"//rc/@timestamp").
Poznámka: Pokud máte aktuální verzi Microsoftu 365, můžete snadno vložit vzorec do horní levé buňky výstupní oblasti a potom stisknutím klávesy Enter vzorec potvrdit jako dynamický maticový vzorec. Jinak musíte vzorec zadat jako starší maticový vzorec tak, že nejprve vyberete výstupní oblast, potom vložíte vzorec do horní levé buňky výstupní oblasti a potvrdíte ho stisknutím kláves Ctrl+Shift+Enter. Excel vloží složené závorky na začátku a konci vzorce za vás. Další informace o maticových vzorcích najdete v tématu s pokyny k používání a příklady maticových vzorců.
-
Funkci FILTERXML můžete použít také společně s funkcemi ENCODEURL a WEBSERVICE. Můžete třeba použít službu markitondemand.com api k vrácení informací o akciích společnosti:
=WEBSERVICE("http://dev.markitondemand.com/MODApis/Api/Quote/xml?symbol="&ENCODEURL(C2))
Kde máte burzovní panel v buňce C2.
Potom můžete pomocí funkce FILTERXML extrahovat konkrétní data o této akciích. Pokud třeba chcete v buňce C2 získat poslední cenu akcie, můžete použít:
=FILTERXML(WEBSERVICE("http://dev.markitondemand.com/MODApis/Api/Quote/xml?symbol="&ENCODEURL(C2));"//QuoteApiModel/Data/LastPrice")
Potřebujete další pomoc?
Kdykoli se můžete zeptat odborníka z komunity Excel Tech nebo získat podporu v komunitách.