La fonction FILTERXML renvoie des données spécifiques à partir d’un contenu XML en utilisant le xpath spécifié.
Remarque
- La fonction FILTERXML n’est pas disponible dans Excel sur le Web et dans Excel pour Mac.
- Cette fonction peut apparaître dans la galerie de fonctions dans Excel pour Mac, mais elle s’appuie sur des fonctionnalités du système d’exploitation Windows, de sorte qu’elle ne renvoie pas de résultats sur Mac.
Syntaxe
FILTRE.XML(xml, XPath)
La syntaxe de la fonction FILTRE.XML contient les arguments suivants.
| Argument | Description |
|---|---|
|
XML (en anglais) Obligatoire |
Chaîne au format XML valide |
|
XPath Obligatoire |
Chaîne au format XPath standard |
Remarque
- Si xml n’est pas valide, FILTERXML retourne le #VALUE ! #VALEUR!.
- Si xml contient un espace de noms avec un préfixe non valide, FILTERXML retourne le #VALUE ! #VALEUR!.
Exemples
Cet exemple utilise la fonction FILTERXML sur les données XML renvoyées dans la cellule B2, qui est fournie par les résultats de la fonction WEBSERVICE sur la requête web dans la cellule B1.
Les données de FILTERXML sont retournées dans les cellules B3 :B5 et C3 :C5, et montrent les trois derniers résultats de requête mis à jour sur Wikipédia et l’heure de leurs mises à jour (au format UTC, « Temps Universel Coordonné »).
Les cellules B3 :B5 contiennent la formule =FILTERXML(B3,"//rc/@title »).
Les cellules C3 :C5 contiennent la formule =FILTERXML(B3,"//rc/@timestamp »).Remarque
Si vous disposez d’une version actuelle de Microsoft 365, vous pouvez alors simplement entrer la formule dans la cellule supérieure gauche de la plage de sortie, puis appuyer sur Entrée pour confirmer la formule en tant que formule de tableau dynamique. Sinon, vous devez entrer la formule comme une formule de tableau héritée : sélectionnez la plage de sortie, entrez la formule dans la cellule en haut à gauche de la plage de sortie, puis appuyez sur Ctrl+Maj+Entrée pour confirmer la formule. Excel ajoute automatiquement des accolades au début et à la fin de la formule. Pour plus d’informations sur les formules de tableau, voir Instructions et exemples de formules de tableau.
Vous pouvez également utiliser FILTERXML en conjonction avec les fonctions ENCODEURL et WEBSERVICE . Par exemple, vous pouvez utiliser le service d’API markitondemand.com pour retourner des informations sur une action d’entreprise :
=WEBSERVICE(« http://dev.markitondemand.com/MODApis/Api/Quote/xml?symbol="&ENCODEURL(C2))
Où vous disposez d’un graduationur boursier dans la cellule C2.
Vous pouvez ensuite utiliser la fonction FILTERXML pour extraire des données spécifiques sur ce stock. Par exemple, pour obtenir le dernier prix du graduationur d’actions dans la cellule C2, vous pouvez utiliser :
=FILTERXML(WEBSERVICE(« http://dev.markitondemand.com/MODApis/Api/Quote/xml?symbol="&ENCODEURL(C2)),"//QuoteApiModel/Data/LastPrice »)
Vous avez besoin d’une aide supplémentaire ?
Vous pouvez toujours poser des questions à un expert de la Communauté technique Excel ou obtenir de l’aide dans les Communautés.