Fogli Google ti consente di registrare
macro che duplicano una
serie specifica di interazioni dell'interfaccia utente che definisci. Una volta registrata una macro, puoi collegarla a una scorciatoia da tastiera nel modulo Ctrl+Alt+Shift+Number. Utilizza questa scorciatoia per eseguire rapidamente di nuovo gli
esatti passaggi della macro, in genere in un altro punto o su dati diversi.
Puoi anche attivare la macro dal menu Estensioni
> Macro di Fogli.
Quando registri una macro, Fogli crea automaticamente una
funzione Apps Script (la funzione macro) che replica i
passaggi della macro. La funzione macro viene aggiunta a un progetto Apps Script
associato al foglio, in un file denominato
macros.gs. Nel caso in cui esista già un file di progetto associato al
foglio con quel nome, la funzione macro viene aggiunta.
Fogli aggiorna automaticamente anche il manifest del progetto di script, registrando il nome e la scorciatoia da tastiera assegnati alla macro.
Poiché ogni macro registrata è definita interamente in Apps Script, puoi modificarle direttamente nell'editor Apps Script. Puoi anche scrivere macro da zero in Apps Script o trasformare le funzioni che hai già scritto in macro.
Creare macro in Apps Script
Puoi prendere le funzioni scritte in Apps Script e utilizzarle come funzioni macro. Un modo semplice per farlo è importare una funzione esistente dall'editor di Fogli.
In alternativa, puoi creare macro nell'editor di Apps Script seguendo questi passaggi:
- Nell'interfaccia utente di Fogli, seleziona Estensioni > Apps Script per aprire lo script associato al foglio nell'editor di Apps Script.
- Scrivi la funzione macro. Le funzioni macro non devono accettare argomenti e non devono restituire valori.
- Modifica il manifesto dello script per creare la macro e collegarla alla funzione macro. Assegnagli una scorciatoia da tastiera e un nome univoci.
- Salva il progetto di script. La macro è quindi disponibile per l'uso nel foglio.
- Testa la funzione macro nel foglio per verificare che funzioni come previsto.
Modificare le macro
Per modificare le macro allegate a un foglio:
- Nell'interfaccia utente di Fogli, seleziona Estensioni > Macro > Gestisci macro.
- Trova la macro che vuoi modificare e seleziona > Modifica macro. Si apre l'editor Apps Script nel file di progetto contenente la funzione macro.
- Modifica la funzione macro per cambiare il comportamento della macro.
- Salva il progetto di script. La macro è quindi disponibile per l'uso nel foglio.
- Testa la funzione macro nel foglio per verificare che funzioni come previsto.
Importare funzioni come macro
Se a un foglio è già associato uno script, puoi importare una funzione nello script come nuova macro e poi assegnarle una scorciatoia da tastiera. Per farlo,
modifica il file manifest
e aggiungi un altro elemento alla proprietà
sheets.macros[].
In alternativa, segui questi passaggi per importare una funzione come macro dall'interfaccia utente di Fogli:
- Nell'interfaccia utente di Fogli, seleziona Estensioni > Macro > Importa.
- Seleziona una funzione dall'elenco visualizzato e poi fai clic su Aggiungi funzione.
- Seleziona per chiudere la finestra di dialogo.
- Seleziona Estensioni > Macro > Gestisci macro.
- Individua la funzione appena importata nell'elenco. Assegna una scorciatoia da tastiera univoca alla macro. Puoi anche modificare il nome della macro qui; il nome corrisponde per impostazione predefinita al nome della funzione.
- Fai clic su Aggiorna per salvare la configurazione della macro.
Struttura del manifest per le macro
Il seguente snippet di esempio del file manifest mostra la sezione di un
manifest che definisce le macro di Fogli.
La sezione sheets del manifest definisce il nome e la scorciatoia da tastiera
assegnati alla macro e il nome della funzione macro.
I manifest includono altri componenti correlati alle proprietà di Apps Script. I campi sotto la chiave sheets sono direttamente correlati
alla funzionalità di Fogli. Questo esempio è solo una parte di un file
manifest completo e non è un manifest completamente funzionante.
{
...
"sheets": {
"macros": [{
"menuName": "QuickRowSum",
"functionName": "calculateRowSum",
"defaultShortcut": "Ctrl+Alt+Shift+1"
}, {
"menuName": "Headerfy",
"functionName": "updateToHeaderStyle",
"defaultShortcut": "Ctrl+Alt+Shift+2"
}]
}
}
Per maggiori dettagli su come vengono creati i manifest delle macro di Fogli, consulta la risorsa Manifest delle macro di Fogli.
Best practice
Quando crei o gestisci macro in Apps Script, segui queste linee guida:
- Le macro sono più efficienti quando sono leggere. Se possibile, limita il numero di azioni eseguite da una macro.
- Le macro sono più adatte per operazioni ripetitive che devono essere ripetute frequentemente con poca o nessuna configurazione. Per altre operazioni, valuta la possibilità di utilizzare una voce di menu personalizzata.
- Ricorda sempre che le scorciatoie da tastiera per le macro devono essere univoche e che un determinato foglio può avere solo dieci macro con scorciatoie alla volta. Eventuali macro aggiuntive possono essere eseguite solo dal menu Estensioni > Macro.
- Le macro che apportano modifiche a una singola cella possono essere applicate a un intervallo di celle selezionando prima l'intero intervallo e poi attivando la macro. Ciò significa che spesso non è necessario creare macro che duplicano la stessa operazione in un intervallo di celle predefinito.
Cosa non puoi fare
Esistono alcune limitazioni relative alle operazioni che puoi eseguire con le macro:
Utilizzare macro al di fuori degli script associati
Le macro sono definite negli script associati a fogli specifici. Le definizioni delle macro vengono ignorate se definite in uno script autonomo o in un'app web.
Definire le macro nei componenti aggiuntivi di Fogli Google Workspace
Non puoi distribuire le definizioni delle macro utilizzando un componente aggiuntivo di Google Workspace per Fogli. Le definizioni di macro in un progetto di componente aggiuntivo di Fogli vengono ignorate dagli utenti di quel componente aggiuntivo.
Distribuire le macro nelle librerie di script
Non puoi distribuire definizioni di macro utilizzando le librerie di Apps Script.
Utilizzare le macro al di fuori di Fogli
Le macro sono una funzionalità esclusiva di Fogli e non esistono per Documenti, Moduli o Presentazioni Google.