0
(0)

SERVICEWEB (SERVICEWEB, fonction) – Support Microsoft

Qu’est-ce que c’est un service web ?

Service web — Wikipedia (wikipedia.org)

En gros un site qui répond à votre demande d’information (exemple : distance Dijon-Lyon, propriétaire du site ayant telle adresse…)

Je vous propose de découvrir la fonction SERVICEWEB au travers de plusieurs exemples.
Il faut bien évidemment une connexion internet pour accéder à ces services.
Ces sites/services/API web sont parfois payants parfois limités, parfois nécessitant une clé identification.

Les services utilisés comme exemple sont libres d’accès mais certains peuvent changer de politique d’accès ou disparaître du jour au lendemain !

Cette fonction renvoie souvent des données sous forme d’une chaîne :

Ces chaines de texte normées (XML/JSON) contiennent des balises/clés permettant de « facilement » récupérer une portion spécifique.

De cette chaîne, on extrait donc l’information qui nous intéresse via la fonction FILTRE.XML (pour le XML) ou via des fonctions de manipulation de chaîne ou via par l’outil Excel PowerQuery (pour le JSON).

Service 1 : Information sur une IP

Objectif : « Géolocalise moi ! »

Site : http://ip-api.com

On a ici le choix XML ou JSON (cf https://ip-api.com/docs) mais ce n’est pas toujours le cas !

B2 
=SERVICEWEB("http://ip-api.com/xml/") ' > On obtient une chaine XML 

B5
 =FILTRE.XML(B2;"query/region")        ' > La balise query puis region renvoie BFC 

Excel : Fonction SERVICEWEB, exemple 1
Affichage de position géographique

Service 2 : Informations sur une IP

Objectif : Récupérer une information concernant une adresse IP
Sites :

– http://ip-api.com
– https://ipapi.co

Exemple illustrant que chaque site à sa syntaxe !
Version mono-formule :

=FILTRE.XML(SERVICEWEB("http://ip-api.com/xml/8.8.8.8");"query/org") ' > Renvoie GOOGLE 
=FILTRE.XML(SERVICEWEB("https://ipapi.co/8.8.8.8/xml/");"root/org")  ' > Renvoie GOOGLE 

Excel : Fonction SERVICEWEB, exemple 2
Information sur le propriétaire d'une adresse IP

Service 3 : Informations sur une adresse postale

Objectif : Contrôler la validité d’une adresse 

Site : https://adresse.data.gouv.fr/api-doc/adresse

Ici, la difficulté est de traiter le retour en format JSON !

On va passer par PowerQuery et pour « simplifier », on récupère une table et non une simple valeur.

Le nombre d’étapes de transformation est spécifique à chaque chaîne JSON

1-Importer la chaine dans PowerQuery

Ruban Données>A partir de Tableau ou d’une plage (groupe Récupérer et transformer des données)

Excel : Fonction SERVICEWEB, exemple 3
Importation de la chaîne JSON dans PowerQuery

2-Convertion de la chaîne JSON dans PowerQuery

Ruban Transformer > Analyser > JSON

Excel : Fonction SERVICEWEB, exemple 3
Analyse de la chaîne JSON dans PowerQuery

3-On développe la colonne (ici JSON)

Excel : Fonction SERVICEWEB, exemple 3

Excel : Fonction SERVICEWEB, exemple 3
Développement de la colonne dans PowerQuery

4-Idem pour la colonne features

Excel : Fonction SERVICEWEB, exemple 3
Développement de la colonne dans PowerQuery

La valeur de la colonne Features passe de List à Record

5-On recommence la colonne features

Excel : Fonction SERVICEWEB, exemple 3
Développement de la colonne dans PowerQuery

Si l’adresse est incorrecte, plusieurs variantes d’adresse sont retournées (1 par ligne)

Via la colonne geométrie on peut accéder aux coordonnées géographiques (latitude/longitude) du lieu.

6-On affiche les valeurs de la colonne properties

Vu que l’on a un enregistrement unique (1 ligne), je propose de le présenter en table (2 colonnes et n lignes) sinon ce serait en tableau (on ferait Développer la colonne).

Cliquer sur Record

Excel : Fonction SERVICEWEB, exemple 3
Affichage de l'enregistrement dans PowerQuery

Affichage de l'enregistrement dans PowerQuery

Puis Convertir > En table

Excel : Fonction SERVICEWEB, exemple 3
Conversion de l'enregistrement en table dans PowerQuery

7-Retour dans Excel (Ouf !)

Ruban Accueil > Fermer et charger dans...

Excel : Fonction SERVICEWEB, exemple 3
Renvoie de la table PowerQuery dans Excel
Excel : Fonction SERVICEWEB, exemple 3
Renvoie de la table PowerQuery dans Excel

Résultat :

Excel : Fonction SERVICEWEB, exemple 3

La valeur score reflète l’exactitude de l’adresse par rapport à celle renvoyée (j’imagine).

Merci pour votre attention bienveillante.

Service 4 : Fulgurances de Kanye West

Objectif : Ouvrir son esprit et apprendre des grands de ce monde.

Site : https://api.kanye.rest

Pour finir, on se détend avec encore du JSON mais en beaucoup plus simple comme notre ami.

JSON renvoyant une citation de KanyeWest

Excel : Fonction SERVICEWEB, exemple 4

Merci pour votre attention bienveillante.

Article intéressant ?

Cliquez sur une étoile pour noter cet article !

Note moyenne 0 / 5. Nombre de votes : 0

Aucun vote pour l'instant ! Soyez le premier à noter ce post.

Nous sommes désolés que cet article ne vous ait pas été utile !

Améliorons cet article !

Dites nous comment nous pouvons améliorer cet article ?

A lire également

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *