← stefanobertani.it

Google Apps Script vs
Power Automate

Due strumenti diversi, stesso problema: automatizzare procedure ripetitive senza mandare i dati fuori dall'ecosistema aziendale. Due implementazioni reali a confronto.

Trova il tuo strumento → Vedi come funzionano Leggi l'articolo completo

Qual è lo strumento giusto per te?

Tre domande per capire quale strumento si adatta meglio alla tua situazione. La risposta tiene conto del tuo ecosistema, della complessità del processo e delle competenze disponibili.

1Quale ambiente usi in azienda?
Google Workspace
Gmail, Drive, Sheets, Docs, Calendar
Microsoft 365
Outlook, Teams, SharePoint, OneDrive, Excel
Entrambi o non ancora definito
Mix di strumenti o ambiente da scegliere
2Com'è il processo che vuoi automatizzare?
Semplice e circoscritto
Pochi passaggi, un solo strumento coinvolto
Complesso o multi-strumento
Più condizioni, più app, logica ramificata
Non ancora chiaro
Devo ancora mappare bene il processo
3Hai qualcuno che sa usare un editor di codice?
Sì, o userò un assistente AI per il codice
Disposto a lavorare con script JavaScript
No, preferisco un'interfaccia visuale
Voglio costruire il flusso senza scrivere codice


Come funzionano i due flussi

Naviga passo per passo le due implementazioni reali: gestione fatture con Google Apps Script e report newsletter con Power Automate.

Google Apps Script — Fatture in entrata
Power Automate — Report newsletter
1
Trigger: ricorrenza temporale
Lo script si avvia automaticamente due volte al giorno tramite trigger impostato in Apps Script. Nessun intervento manuale necessario.
ScriptApp.newTrigger()
⏰ ore 08:00 — avvio automatico
2
Scansione Gmail
Cerca i messaggi non elaborati con allegati PDF. Usa i label Gmail per marcare i messaggi già processati e prevenire duplicati.
GmailApp.search(query)
✉ 3 messaggi con PDF trovati
3
Salvataggio strutturato su Drive
Per ogni allegato crea la cartella Anno/Mese su Drive se non esiste, poi salva il PDF con nome standardizzato: data + mittente.
DriveApp.createFile(blob)
📁 Fatture/2026/Maggio/fattura_fornitore.pdf
4
Aggiornamento registro Sheets
Aggiunge una riga al foglio di registro con data, mittente, nome file e link diretto al documento su Drive.
SpreadsheetApp.appendRow()
📊 Riga aggiunta: 09/05/2026 · Fornitore Srl · → link
5
Notifica email al responsabile
Invia email di riepilogo con link diretti ai documenti. Se non ci sono nuovi documenti il giorno, non invia nulla — zero notifiche inutili.
MailApp.sendEmail()
📨 Inviata — 3 fatture elaborate oggi
Passaggio 1 di 5
1
Trigger: ricorrenza giornaliera
Il flusso parte ogni mattina a orario definito. Configurato come trigger "Ricorrenza" in Power Automate — completamente automatico.
Trigger: Ricorrenza
⏰ ore 07:30 — flusso avviato
2
Recupero messaggi da Outlook
Il connettore "Office 365 Outlook — Recupera messaggi" ottiene i non letti. Filtrabili per cartella, data o mittente direttamente nel blocco.
Connettore: Office 365 Outlook
✉ 12 messaggi non letti recuperati
3
Ciclo e filtro per mittente
"Applica a ognuno" scorre i messaggi. Una condizione verifica il mittente con contains(). I messaggi validi si accumulano nella variabile report.
Applica a ognuno + Condizione contains() — testare con cura
🔍 4 messaggi superano il filtro
4
Invio report via email
Se la variabile report non è vuota viene inviata l'email di riepilogo. Se non ci sono messaggi rilevanti il flusso termina silenziosamente.
Condizione + Invia un'email
📨 Report inviato — 4 comunicazioni
5
Segna messaggi come letti
Solo i messaggi inclusi nel report vengono segnati come letti tramite ID messaggio. Gli altri restano non letti per revisione manuale eventuale.
Segna come letto (per ID)
✓ 4 messaggi segnati come letti
Passaggio 1 di 5

Confronto diretto

Clicca su ogni riga per espandere il dettaglio. Le dimensioni di confronto coprono interfaccia, ecosistema, costi, privacy e manutenibilità nel tempo.

Dimensione
Apps Script
Power Automate
Interfaccia
Codice JS
Visuale
Editor JavaScriptRichiede logica di programmazione. Con un assistente AI che scrive il codice su descrizione, diventa accessibile anche senza esperienza.
Punto e cliccaBlocchi e connettori configurabili tramite interfaccia grafica. Nessun codice per la maggior parte delle operazioni.
Curva di apprendimento
Alta senza AI
Media
Con assistente AI: accessibileSenza JavaScript la barriera è alta. Con un assistente AI che scrive e modifica il codice su descrizione diventa praticabile per chi non programma.
Guidata ma non banaleAccessibile per chi parte da zero, ma la logica dei connettori, le espressioni e la gestione errori richiedono tempo per essere comprese.
Ecosistema
Google Workspace
Microsoft 365+
Gmail, Drive, Sheets, CalendarIntegrazione nativa con tutti i servizi Google. Ideale se il processo resta dentro l'ecosistema Google senza coinvolgere strumenti esterni.
Outlook, Teams, SharePoint + 500 connettoriIntegrazione nativa Microsoft 365 e centinaia di servizi esterni. Più adatto a processi che attraversano più piattaforme.
Scalabilità
Circoscritto
Processi complessi
Ottima per casi specifici e stabiliQuando il processo cresce in complessità o coinvolge molti strumenti diversi, la gestione del codice diventa più onerosa.
Progettato per crescereL'interfaccia visuale rende gestibile la complessità crescente. Più adatto quando si prevede di estendere il flusso nel tempo.
Costo
Incluso
Incluso*
Tutti i piani Google WorkspaceApps Script è disponibile senza costi aggiuntivi in qualsiasi piano, incluso quello base.
Business Standard e superioriIncluso nei piani Microsoft 365 Business Standard, Premium e licenze Enterprise. Verificare il proprio piano.
Privacy e dati
Tenant Google
Tenant Microsoft
Dati nel tenant aziendale GoogleNessun dato esce dall'ecosistema Google. Le garanzie GDPR sono quelle già in essere — nessun passaggio aggiuntivo da valutare.
Dati nel tenant aziendale MicrosoftCon connettori nativi i dati restano nel tenant. Se si usano connettori di terze parti, valutare i termini di trattamento caso per caso.
Manutenibilità
Richiede codice
Visuale
Modifiche tramite editor o AIOgni modifica richiede di aggiornare il codice. Con un assistente AI è gestibile conversazionalmente, ma resta un passaggio tecnico.
Modifiche dall'interfacciaI flussi si modificano direttamente punto e clicca. Più accessibile per modifiche frequenti o team senza competenze tecniche.