Fogli Google ti consente di registrare
macro che duplicano una
specifica serie di interazioni con l'interfaccia utente che hai definito. Una volta registrata la macro, puoi collegarla a una scorciatoia da tastiera nel modulo Ctrl+Alt+Shift+Number
. Puoi utilizzare questa scorciatoia per eseguire rapidamente di nuovo i passaggi esatti della macro, in genere in un luogo diverso o su dati diversi.
Puoi anche attivare la macro dal menu Estensioni
> Macro di Fogli Google.
Quando registri una macro, Fogli Google crea automaticamente una funzione Apps Script (la funzione macro) che replica i passaggi della macro. La funzione della macro viene aggiunta a un progetto Apps Script collegato al foglio, in un file denominato macros.gs
. Se al foglio è già associato un file di progetto con questo nome, la funzione della macro viene aggiunta. Fogli Google aggiorna automaticamente anche il manifest del progetto dello script, registrando il nome e la scorciatoia da tastiera assegnati alla macro.
Poiché ogni macro registrata è definita interamente in Apps Script, puoi modificarla direttamente nell'editor di Apps Script. Puoi anche scrivere macro da zero in Apps Script o trasformare in macro le funzioni che hai già scritto.
Creazione di macro in Apps Script
Puoi utilizzare le funzioni scritte in Apps Script come funzioni di macro. Il modo più semplice per farlo è importare una funzione esistente dall'editor di Fogli Google.
In alternativa, puoi creare macro nell'editor di Apps Script seguendo questi passaggi:
- Nell'interfaccia utente di Fogli Google, seleziona Estensioni > Apps Script per aprire lo script associato al foglio nell'editor di Apps Script.
- Scrivi la funzione della 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 della macro. Assegna una scorciatoia da tastiera e un nome univoci.
- Salva il progetto di script. La macro sarà quindi disponibile per l'utilizzo nel foglio.
- Testa la funzione della macro nel foglio per verificare che funzioni come previsto.
Modificare le macro
Per modificare le macro associate a un foglio:
- Nell'interfaccia utente di Fogli Google, seleziona Estensioni > Macro > Gestisci macro.
- Trova la macro che vuoi modificare e seleziona > Modifica macro. Si apre l'editor di Apps Script nel file del progetto contenente la funzione della macro.
- Modifica la funzione della macro per cambiare il comportamento della macro.
- Salva il progetto di script. La macro sarà quindi disponibile per l'utilizzo nel foglio.
- Testa la funzione della macro nel foglio per verificare che funzioni come previsto.
Importazione di funzioni come macro
Se è già presente uno script associato a un foglio, puoi import 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 Google, 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 alla macro una scorciatoia da tastiera univoca. Qui puoi anche modificare il nome della macro, che per impostazione predefinita corrisponde al nome della funzione.
- Fai clic su Aggiorna per salvare la configurazione della macro.
Struttura manifest per le macro
Il seguente snippet di esempio di file manifest mostra la sezione di un
manifest che definisce le macro di Fogli Google.
La sezione sheets
del file manifest definisce il nome e la scorciatoia da tastiera assegnati alla macro e il nome della funzione della macro.
{
...
"sheets": {
"macros": [{
"menuName": "QuickRowSum",
"functionName": "calculateRowSum",
"defaultShortcut": "Ctrl+Alt+Shift+1"
}, {
"menuName": "Headerfy",
"functionName": "updateToHeaderStyle",
"defaultShortcut": "Ctrl+Alt+Shift+2"
}]
}
}
Per ulteriori dettagli sulla creazione dei manifest delle macro di Fogli, consulta la risorsa manifest delle macro di Fogli.
Best practice
Quando crei o gestisci macro in Apps Script, ti consigliamo di rispettare le seguenti linee guida.
- Le macro hanno un rendimento migliore 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, ti consigliamo di utilizzare una voce di menu personalizzata.
- Ricorda sempre che le scorciatoie da tastiera delle macro devono essere univoche e che un determinato foglio può contenere al massimo dieci macro con scorciatoie contemporaneamente. Eventuali altre macro 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 duplchino la stessa operazione in un intervallo di celle predefinito.
Cosa non puoi fare
Esistono alcune limitazioni a ciò che puoi fare con le macro:
Utilizzare le macro al di fuori degli script vincolati
Le macro sono definite negli script associati a Fogli Google specifici. Le definizioni delle macro vengono ignorate se sono definite in un script autonomo o in un'app web.
Definire le macro nei componenti aggiuntivi di Fogli
Non puoi distribuire le definizioni di macro utilizzando un componente aggiuntivo di Fogli. Eventuali definizioni di macro in un progetto di componenti aggiuntivi di Fogli vengono ignorate dagli utenti del componente aggiuntivo.
Distribuire le macro nelle librerie di script
Non puoi distribuire le definizioni di macro utilizzando le librerie di Apps Script.
Utilizzare le macro all'esterno di Fogli Google
Le macro sono una funzionalità di Fogli Google e non esistono per Documenti, Moduli o Presentazioni Google.