Des questions ou des problèmes ? Écris dans les GitHub Discussions.

Google Sheets propose déjà GOOGLEFINANCE, et pour une conversion rapide, les deux solutions fonctionnent. Chacune fournit un cours moyen du marché, et les formules ci-dessous s'utilisent partout où tu mettrais GOOGLEFINANCE. La différence réside dans la provenance. Le taux moyen de GOOGLEFINANCE ne mentionne pas ses sources et ne permet aucun paramétrage. Celui de Frankfurter est transparent. Si la source doit être officielle, tu peux fixer une institution précise : le taux de référence de la BCE pour la TVA européenne, la NBP polonaise ou le PTAX brésilien. Tu disposes aussi de taux historiques stables qui ne changent pas rétroactivement.

Démarrage rapide

Aucune configuration ni clé API requise. Insère un taux en direct dans une cellule avec IMPORTDATA et l'endpoint CSV :

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

Google Sheets remplit un tableau compact date,base,quote,rate. La colonne date apparaît au départ sous forme de numéro de série. Sélectionne-la et choisis Format, Nombre, Date pour l'afficher lisiblement. Demande plusieurs devises à la fois en les séparant par des virgules :

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

Convertir un montant

IMPORTDATA renvoie le taux, pas le montant total converti. Multiplie ton montant par la cellule du taux importé, ou utilise la fonction personnalisée ci-dessous pour un appel direct.

Fonction personnalisée

Pour obtenir une fonction réutilisable =FRANKFURTER(), ajoute un court script Apps Script. Dans ta feuille de calcul, ouvre Extensions, Apps Script, colle ce code et enregistre :

function FRANKFURTER(amount, from, to, date) {
  let url = `https://api.frankfurter.dev/v2/rate/${from}/${to}`;
  if (date) url += `?date=${Utilities.formatDate(date, "UTC", "yyyy-MM-dd")}`;
  const data = JSON.parse(UrlFetchApp.fetch(url).getContentText());
  return amount * data.rate;
}

Appelle-la ensuite depuis n'importe quelle cellule :

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

Passe une date pour un taux historique :

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

Fixer une source officielle

Par défaut, tu obtiens le taux combiné de toutes les sources. Ajoute providers pour fixer une institution précise. C'est indispensable pour la comptabilité et la fiscalité : de nombreux pays imposent le taux publié par leur propre banque centrale pour convertir des devises étrangères.

=IMPORTDATA("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, standard pour la TVA et les douanes dans l'UE.
NBP
Narodowy Bank Polski. La TVA et l'impôt sur les sociétés en Pologne se calculent au taux de la NBP.
CNB
Banque nationale tchèque, référence pour la comptabilité et la fiscalité en République tchèque.
BCB
Banco Central do Brasil PTAX, la référence pour les contrats et impôts au Brésil.
BANXICO
Taux FIX de Banco de México pour le règlement des dettes en dollars américains.

Consulte toutes les sources. Une source spécifique suit son propre calendrier de publication, son dernier taux peut donc afficher un jour de décalage par rapport au taux combiné.

Séries historiques

Utilise from pour définir une période et group=month pour regrouper à une ligne par mois, prête pour tes graphiques. C'est là que Frankfurter prend tout son sens dans une feuille de calcul : des séries longues et stables, jamais modifiées rétroactivement.

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

Cette formule extrait le dollar face à la livre sterling jusqu'en 1949 depuis les archives de la Deutsche Bundesbank. Tu peux constater la fixité de l'ancrage du câble à 2,80 $ pendant des années avant son décrochage en 1967. Les fixings de la Bundesbank à Francfort offrent une profondeur historique rare : le dollar contre le deutsche mark à partir de 1948, et la plupart des autres paires du dollar de 1949 à 1970. La Banque centrale européenne prend le relais à partir de 1999 ; une série moderne continue utilise le taux combiné par défaut ou providers=ecb.