Sincronizzazione Airtable e Fogli GoogleSviluppo e personalizzazione

Un Google Apps Script che copia i record tra la sua base Airtable e un foglio Google, in una direzione o in entrambe

Di solito pronto in 15 minutiRevisioni incluseControllo di qualità
Pacchetti
Pagamento protettoDettagli
  • Le revisioni previste dal pacchetto sono gratuite.
  • Se non risponde entro 3 giorni dalla consegna, il lavoro viene accettato automaticamente.

Il denaro viene riservato al momento del pagamento e sbloccato solo quando accetta il lavoro.

Un Google Apps Script che copia i record tra la sua base Airtable e un foglio Google, in una direzione o in entrambe

Esempio di risultato

Esempio per il pacchetto Standard

Unire i file mensili delle vendite di 9 negozi in un unico report Excel

Come si esegue

python merge_sales.py --month 2026-10
2026-11-02 09:14:03 INFO  Cartella: sales/2026-10, 9 file trovati
2026-11-02 09:14:03 INFO  shop-01.csv: 1.284 righe
2026-11-02 09:14:04 INFO  shop-02.xlsx: 967 righe
2026-11-02 09:14:04 WARN  shop-07.csv: saltate 3 righe senza prezzo (righe 88, 412, 913)
2026-11-02 09:14:05 INFO  Fatto: 10.412 righe -> report-2026-10.xlsx (fogli "Vendite" e "Totali")

Impostazioni, non codice

I nomi delle colonne di ogni negozio si trovano in settings.ini, quindi un nuovo negozio o una colonna rinominata è una riga lì:

[columns]
date = Data, Data vendita, Giorno
product = Prodotto, Articolo, Descrizione
quantity = Q.tà, Quantità, Pz
price = Prezzo, Prezzo unitario

Una parte del codice

def read_shop_file(path: Path, columns: dict[str, list[str]]) -> pd.DataFrame:
    """Legge il file di un negozio e gli dà i nomi di colonna del report."""
    table = pd.read_excel(path) if path.suffix == ".xlsx" else pd.read_csv(path, encoding="utf-8-sig")
    renamed = {}
    for name, variants in columns.items():
        found = next((c for c in table.columns if c.strip() in variants), None)
        if found is None:
            raise ReportError(f"{path.name}: nessuna colonna per '{name}' (cercate: {', '.join(variants)})")
        renamed[found] = name
    table = table.rename(columns=renamed)[list(columns)]
    table["shop"] = path.stem
    return table

File: un archivio ZIP con merge_sales.py (310 righe), settings.ini, requirements.txt e un README su come installare Python, eseguire lo script e cosa significa ogni messaggio del registro. Il cliente lo esegue sul proprio computer.

Cliente: una piccola catena di 9 cartolerie; ogni negozio invia le vendite del mese in un file CSV o Excel, con nomi di colonna leggermente diversi. Compito: un unico script che legge tutti i file di una cartella, porta le colonne a una stessa forma e scrive un solo report Excel con tutte le vendite e un foglio di totali per negozio.

Il cliente e tutti i dati sono inventati.

Informazioni sul servizio

In un progetto alcune persone lavorano in Airtable, altre solo in Fogli Google, e copiare i record tra i due prima o poi va storto. Questo Google Apps Script legge la sua base Airtable tramite l'API ufficiale con il suo token di accesso personale e scrive in un foglio i record che sceglie: una tabella o una vista, i campi che le servono come colonne. Dallo Standard conserva l'ID del record in ogni riga, così una seconda esecuzione aggiorna le righe invece di duplicarle, e mostra i record collegati come nomi. Il Premium rimanda ad Airtable le modifiche fatte nel foglio, secondo la regola che imposta su quale lato prevale. Il suo token va nelle proprietà dello script, che compila lei, mai nel codice. Gira al ritmo consentito dall'API di Airtable; gli allegati arrivano come link.

Cosa è incluso

  • Cosa riceveUn archivio ZIP con il codice Apps Script e un README che spiega come aggiungerlo al foglio, inserire il suo token ed eseguirlo; il codice è visibile anche nella pagina dell'ordine.
  • API ufficialeLa Web API di Airtable con il suo token
  • Campi a sua sceltaUna tabella o una vista, solo i campi che le servono
  • Nessun doppioneDallo Standard, righe abbinate tramite l'ID del record
  • Token fuori dal codiceLo inserisce lei nelle proprietà dello script
  • Codice leggibileCon commenti, facile aggiungere un campo in seguito

Come funziona

  1. 1
    CompitoLei descrive la base, le tabelle e la direzione
  2. 2
    CodiceScriviamo lo script secondo la documentazione di Airtable e la guida all'installazione
  3. 3
    Lo proviLo esegue su una copia della base o su una vista di prova
  4. 4
    ModificheChiede modifiche nei limiti del pacchetto e invia eventuali messaggi di errore

Cosa ci serve da lei

Le tabelle o viste di Airtable da sincronizzare e uno screenshot dei loro campi con i tipi (testo, numero, data, selezione singola, record collegato, allegato), il foglio di destinazione e come devono chiamarsi e ordinarsi le colonne. Quale direzione le serve e, per la sincronizzazione bidirezionale (Premium), quale lato prevale quando lo stesso record cambia in entrambi i posti. Ogni quanto deve essere eseguito. Crei il token di accesso personale nel suo account Airtable; non lo invii mai a noi.

Le chiederemo:

  • Cosa c'è nella base Airtable?
  • Quale direzione le serve?
  • Quali campi devono essere copiati?
  • Ogni quanto deve essere eseguito?

Confronto dei pacchetti

PacchettiBaseDa Airtable a Fogli Google15 €StandardSincronizzazione con impostazioni30 €PremiumStrumento di sincronizzazione bidirezionale60 €
Tempi di consegna1 giorno2 giorni3 giorni
Revisioni123
Codicefino a 150 righefino a 400 righefino a 1.000 righe
File di codice1fino a 3fino a 8
File di impostazioniNoSìSì
Messaggi di errore chiari e un logNoSìSì
Opzioni di avvio e una guida per eseguirlo a orari programmatiNoNoSì
Guida all'installazione e all'avvio (README)SìSìSì
LinguaggioGoogle Apps ScriptGoogle Apps ScriptGoogle Apps Script
Ordina BaseOrdina StandardOrdina Premium

Pagamento protetto

Paga al momento dell'ordine, ma il denaro viene sbloccato solo per un lavoro accettato.

  • Prezzo fissoIl prezzo del pacchetto non cambia dopo il pagamento.
  • Il denaro viene riservatoAl pagamento, l'importo viene solo riservato. Passa a Dleex quando accetta il lavoro.
  • Verificato prima della consegnaOgni risultato passa un controllo di qualità prima di arrivare a lei, e lo vede nella pagina dell'ordine prima di accettarlo.
  • Revisioni gratuiteRichieda revisioni nell'ambito del suo brief tante volte quante ne prevede il pacchetto.
  • Accettazione dopo 3 giorniSe entro 3 giorni dalla consegna non accetta il lavoro né richiede una revisione, il lavoro viene accettato automaticamente. Se scrive nella chat dell'ordine dopo la consegna, l'ordine resta in attesa; dopo la nostra risposta potremmo far ripartire i 3 giorni e glielo indicheremo nella chat.
  • Rifacimento o rimborso totaleSe il risultato non corrisponde al suo brief e le revisioni non hanno risolto il problema, oppure il lavoro richiede più del doppio dei tempi di consegna previsti, scriva nella chat dell'ordine: rifaremo il lavoro o le rimborseremo l'intero pagamento.
Come funziona →

Domande e risposte

È in tempo reale, come una sincronizzazione live?

No. Copia quando viene eseguito: con un pulsante o, con la guida del Premium, con un attivatore a tempo, per esempio ogni 15 minuti. Le modifiche nel frattempo compaiono all'esecuzione successiva.

Cosa succede ad allegati e record collegati?

Gli allegati arrivano come link ai file. I record collegati compaiono come nomi dallo Standard; nel Base arrivano come ID dei record.

Le modifiche nel foglio possono sovrascrivere Airtable?

Solo nel Premium e solo nei campi che consente, secondo la sua regola su quale lato prevale. Lo provi prima su una copia della base.

Avete accesso alla mia base?

No. Crea lei il token e aggiunge lo script nei suoi account. Lavoriamo dai suoi screenshot e dalla documentazione di Airtable.

Non hai trovato la risposta?

Pacchetti