Domande o problemi? Scrivi nelle GitHub Discussions.

Google Sheets include già GOOGLEFINANCE, e per una conversione rapida entrambi i metodi funzionano. Entrambi offrono un tasso di mercato misto, e le formule seguenti possono essere inserite ovunque useresti GOOGLEFINANCE. La differenza risiede nella provenienza. La combinazione di GOOGLEFINANCE non identifica le proprie fonti e non consente di scegliere cosa vi confluisce. La combinazione di Frankfurter è trasparente, e quando la fonte deve essere esatta puoi fissare una specifica istituzione: il tasso di riferimento della BCE per l'IVA UE, la NBP polacca o il PTAX brasiliano. Ottieni anche tassi storici che non subiscono modifiche retroattive.

Avvio rapido

Nessuna configurazione né chiave API. Inserisci un tasso in tempo reale in una cella con IMPORTDATA e l'endpoint CSV:

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

Sheets crea una piccola tabella date,base,quote,rate. La colonna date viene importata come numero seriale. Selezionala e scegli Formato, Numero, Data per visualizzarla correttamente. Richiedi più quotazioni contemporaneamente separandole con virgole:

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

Convertire un importo

IMPORTDATA restituisce il tasso di cambio, non il totale convertito. Moltiplica il tuo importo per la cella del tasso importato, oppure usa la seguente funzione personalizzata per una chiamata pulita e diretta.

Funzione personalizzata

Per disporre di una funzione riutilizzabile =FRANKFURTER(), aggiungi un breve script Apps Script. Nel tuo foglio, apri Estensioni, Apps Script, incolla questo codice e salva:

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;
}

Poi richiamala da qualsiasi cella:

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

Passa una data per ottenere un tasso storico:

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

Fissare una fonte ufficiale

Per impostazione predefinita ottieni la combinazione di tutte le fonti. Aggiungi providers per fissare una singola istituzione. Questo è fondamentale per aspetti fiscali e contabili: molte giurisdizioni richiedono il tasso ufficiale della propria banca centrale quando si convertono importi in valuta estera.

=IMPORTDATA("https://api.frankfurter.dev/v2/rates.csv?base=usd&quotes=eur&providers=ecb")
ECB
Tasso di riferimento della Banca centrale europea, lo standard per IVA e dogane nell'UE.
NBP
Narodowy Bank Polski. L'IVA e l'imposta sulle società in Polonia si calcolano al tasso della NBP.
CNB
Fixing della Banca nazionale ceca, riferimento per contabilità e imposte in Cechia.
BCB
PTAX del Banco Central do Brasil, riferimento per contratti e imposte in Brasile.
BANXICO
Tasso FIX di Banco de México per liquidare obbligazioni in dollari statunitensi.

Esplora tutte le fonti. Una fonte fissata segue il proprio calendario di pubblicazione, quindi il suo ultimo tasso può essere indietro di un giorno rispetto al tasso combinato più recente.

Serie storiche

Usa from per un intervallo di date e group=month per ridurlo a una riga per mese, pronto per creare grafici. È qui che Frankfurter dimostra la sua utilità nei fogli di calcolo: serie lunghe e stabili che non cambiano silenziosamente.

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

Questo recupera il tasso del dollaro statunitense rispetto alla sterlina fino al 1949 dall'archivio della Deutsche Bundesbank. Puoi osservare come la parità a 2,80 $ sia rimasta solida per anni per poi rompersi nel 1967. La storia più remota proviene dai fixing di Francoforte della Bundesbank: il dollaro contro il marco dal 1948, e la maggior parte degli altri cambi del dollaro dal 1949 al 1970. La Banca centrale europea subentra dal 1999, quindi per una serie moderna continua usa la combinazione predefinita o providers=ecb.