Des questions ou un problème ? Écris dans les GitHub Discussions.

La solution maison d'Excel pour les taux de change, c'est le type de données Devises de Microsoft 365 : un taux combiné en direct, dont tu ne peux ni choisir la source ni récupérer l'historique. Le taux combiné de Frankfurter est transparent, et quand la source doit être exacte, tu peux t'en tenir à une seule autorité : le taux de référence de la BCE pour la TVA européenne, la NBP polonaise ou le taux PTAX brésilien. L'historique d'un fournisseur choisi reste tel qu'il a été publié. Power Query fait le travail sous Windows comme sur Mac. Windows a en plus une formule d'une ligne pour les conversions rapides.

Power Query

C'est la méthode principale, sous Windows comme sur Mac. Va dans Données, À partir du web, colle l'endpoint CSV et charge une table date,base,quote,rate. Actualise-la à tout moment avec Données, Actualiser tout :

https://api.frankfurter.dev/v2/rates.csv?base=usd&quotes=eur

Demande plusieurs devises cibles à la fois en les séparant par des virgules :

https://api.frankfurter.dev/v2/rates.csv?base=usd&quotes=eur,gbp,jpy

Convertir un montant

Power Query charge le taux, pas le montant converti. Multiplie ton montant par la cellule du taux chargé. Pour une conversion ponctuelle sans requête, Microsoft 365 sous Windows peut appeler l'API directement. Ajoute une fonction nommée (Formules, Gestionnaire de noms, Nouveau) appelée FRANKFURTER avec cette définition :

=LAMBDA(amount, from, to, [date], amount * NUMBERVALUE(TEXTBEFORE(TEXTAFTER(WEBSERVICE("https://api.frankfurter.dev/v2/rate/" & from & "/" & to & IF(ISOMITTED(date), "", "?date=" & YEAR(date) & "-" & TEXT(MONTH(date), "00") & "-" & TEXT(DAY(date), "00"))), """rate"":"), "}"), "."))

Appelle-la ensuite depuis n'importe quelle cellule :

=FRANKFURTER(100, "usd", "eur")

Passe une date pour obtenir un taux historique :

=FRANKFURTER(100, "usd", "eur", DATE(2020, 1, 2))

WEBSERVICE n'existe que sous Windows, et comme les formules Excel n'ont pas de parseur JSON, la fonction extrait le taux directement du texte de la réponse. NUMBERVALUE avec un point décimal explicite la fait fonctionner aussi dans les paramètres régionaux qui utilisent la virgule. Sur Mac, multiplie plutôt par une cellule de taux chargée avec Power Query.

Choisir une source officielle

Par défaut, tu obtiens le taux combiné de toutes les sources. Ajoute providers à l'URL de la requête pour t'en tenir à une seule autorité. C'est important pour la fiscalité et la comptabilité : de nombreux pays imposent le taux publié par leur propre banque centrale pour convertir des montants en devises étrangères.

https://api.frankfurter.dev/v2/rates.csv?base=usd&quotes=eur&providers=ecb
ECB
Taux de référence de la Banque centrale européenne, la norme pour la TVA et les douanes dans l'UE.
NBP
Narodowy Bank Polski. En Pologne, la TVA et l'impôt sur les sociétés se convertissent au taux de la NBP.
CNB
Fixing de la Banque nationale tchèque, utilisé pour la comptabilité et la fiscalité en Tchéquie.
BCB
Taux PTAX du Banco Central do Brasil, la référence pour les contrats et la fiscalité au Brésil.
BANXICO
Taux FIX du Banco de México, pour le règlement des dettes libellées en dollars américains.

Consulte toutes les sources. Une source choisie suit son propre calendrier de publication : son dernier taux peut donc avoir un jour de retard sur le dernier taux combiné.

Séries historiques

Utilise from pour une plage de dates et group=month pour la réduire à une ligne par mois, prête à mettre en graphique. Charge-la avec Power Query et elle s'actualise comme n'importe quelle autre requête. L'historique combiné peut bouger légèrement quand de nouvelles données arrivent. Choisis un fournisseur quand les chiffres doivent rester fixes.

https://api.frankfurter.dev/v2/rates.csv?from=1949-12-01&base=usd&quotes=gbp&providers=bbk&group=month

Cette requête récupère le dollar américain face à la livre sterling depuis 1949, dans les archives de la Deutsche Bundesbank. Tu y vois le cable tenir sa parité fixe de 2,80 $ pendant des années, puis décrocher en 1967. L'historique ancien vient des fixings de la Bundesbank à Francfort : le dollar contre le mark dès 1948, la plupart des autres paires en dollar de 1949 à 1970. La Banque centrale européenne prend le relais à partir de 1999 : pour une série moderne continue, utilise le taux combiné par défaut ou providers=ecb.