Des données JSON (ou XML) dans Excel sans VBA

Des données JSON (ou XML) dans Excel sans VBA

Dans un article précédent, nous avons vu comment faire des appels d'API REST Json depuis Excel mais en ayant recours au VBA.
Ici, nous allons voir comment récupérer de la donnée toujours depuis des APIs REST en Json (ou XML) mais cette fois uniquement à base de formules.
Comme vous êtes pressés, je commence par des exemples mais n'oubliez pas de lire la suite.

Exemples

Voici des exemples de formules
xl01
et les résultats correspondant
xl03

La formule magique

Comme vous avez pu le voir dans les exemples, ce n'est pas abaracadabra mais =WEBSERVICE(url).
Elle prend simplement en argument une URL et retourne le contenu.

Il y a cependant quelques limitations

  • Cette formule a été introduite dans MS Excel 2013 et ne fonctionne que sous Windows.
  • Elle ne fait que des requetes de type GET
  • L'URL ne doit pas dépasser 2048 caractères (ce qui laisse de la marge)
  • Par contre le résultat étant dans une seule cellule, celui-ci ne peut pas dépasser la limite de 32767 caractères. Dans ces cas là, une erreur #VALUE est affichée comme dans le dernier exemple ci-dessus (cellule A7).

Conclusion

Cette formule est intéreessante mais pour récupérer très peu de données par requête. Elle a l'avantage d'avoir de bonnes performances par contre ne s'adapte pas quand il faut modifier le header ou pour des requetes plus évoluées.