
Sommaire
La fonction Excel WEBSERVICE renvoie les données d'un service Web. La fonction WEBSERVICE est uniquement disponible dans Excel 2013 et versions ultérieures pour Windows.
Objectif
Obtenir des données à partir d'un service WebValeur de retour
Données résultantesSyntaxe
= WEBSERVICE (URL)Arguments
- url - L'url du service Web à appeler.
Version
Excel 2013Notes d'utilisation
La fonction WEBSERVICE renvoie les données d'un service Web hébergé sur Internet. La fonction WEBSERVICE est uniquement disponible dans Excel 2013 et versions ultérieures pour Windows.
Un service Web utilise un protocole comme HTTP pour récupérer des données dans un format lisible par machine comme XML ou JSON. Par exemple, une formule qui utilise WEBSERVICE pour appeler un service Web fictif hébergé sur somewebservice.com pourrait ressembler à ceci:
=WEBSERVICE(“http://somewebservice.com/endpoint?query=xxxx”)
Le résultat de la fonction WEBSERVICE est renvoyé directement dans la feuille de calcul. Dans les cas où le résultat d'un webservice est au format XML, vous pouvez utiliser la fonction FILTERXML pour analyser le XML.
Exemple
Un exemple simple de service Web est RSS, qui est utilisé pour syndiquer le contenu au format XML. RSS est largement disponible et ne nécessite pas d'authentification, c'est donc un moyen facile de tester la fonction WEBSERVICE. Dans l'exemple ci-dessus, WEBSERVICE est utilisé pour récupérer les dernières nouvelles de la NASA. La formule en B4 est:
=WEBSERVICE("https://www.nasa.gov/rss/dyn/breaking_news.rss")
RSS utilise XML, le résultat est donc une longue chaîne de XML qui contient les titres des 10 derniers articles de presse publiés par la NASA, ainsi que des méta-informations telles que la description, la date, l'URL, etc. L'écran ci-dessous montre ces données dans un éditeur de texte:
Analyse du résultat
Lorsque le résultat de WEBSERVICE est XML, vous pouvez utiliser la fonction FILTERXML pour analyser les données. Dans l'exemple illustré, voici comment les données et le titre de chaque article sont extraits. La formule dans B7 extrait la date et coupe les caractères supplémentaires avec la fonction MID pour créer une date compatible Excel:
=MID(FILTERXML(B4,"//item/pubDate"),6,11)
La formule en C7 extrait le titre:
=FILTERXML(B4,"//item/title")
Remarques
- Lorsque WEBSERVICE ne peut pas récupérer les données, il renvoie une #VALUE! Erreur.
- Si le résultat de WEBSERVICE contient plus de 32767 caractères, il renvoie une #VALUE! Erreur.