Fogli Google ti consente di registrare
macro che duplicano una
serie specifica di interazioni dell'UI che definisci. Una volta registrata una
macro, puoi collegarla a una scorciatoia da tastiera nel formato
Ctrl+Alt+Shift+Number. Utilizza questa scorciatoia per eseguire di nuovo rapidamente gli stessi passaggi della macro, in genere in un luogo diverso 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. Se esiste già un file di progetto associato al foglio con questo nome, la funzione macro viene aggiunta al file.
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 modificarla direttamente nell'editor di 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'UI 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 manifest dello script per creare la macro e collegarla alla funzione macro. Assegna un nome e una scorciatoia da tastiera 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'UI di Fogli, seleziona Estensioni > Macro > Gestisci macro.
- Trova la macro che vuoi modificare e seleziona > Modifica macro. Viene aperto l'editor di script di Apps Script nel file di progetto contenente la funzione macro.
- Modifica la funzione macro per cambiarne il comportamento.
- 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 esiste già uno script associato a un foglio,
puoi importare una funzione nello script come una nuova macro e poi assegnarle
una scorciatoia da tastiera. Per farlo, modifica il file manifest e aggiungi un altro elemento alla
sheets.macros[] proprietà.
In alternativa, segui questi passaggi per importare una funzione come macro dall'UI di Fogli:
- Nell'UI di Fogli, seleziona Estensioni > Macro > Importa.
- Seleziona una funzione dall'elenco visualizzato e 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; per impostazione predefinita, il nome è quello della funzione.
- Fai clic su Aggiorna per salvare la configurazione della macro.
Struttura del manifest per le macro
Lo snippet di file manifest seguente 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 relativi alle proprietà di Apps Script. I campi sotto la chiave sheets si riferiscono direttamente alla funzionalità di Fogli. Questo esempio è solo una parte di un file manifest completo e non è un manifest completamente funzionale.
{
...
"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 relativa ai 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 le operazioni ripetitive che devono essere eseguite frequentemente con poca o nessuna configurazione. Per altre operazioni, valuta la possibilità di utilizzare una voce di menu personalizzata invece.
- Ricorda sempre che le scorciatoie da tastiera delle macro devono essere univoche e che un determinato foglio può avere al massimo 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 su ciò che puoi fare con le macro:
Utilizzare le 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 Fogli Google Workspace. Le definizioni delle macro in un progetto di componenti aggiuntivi di Fogli vengono ignorate dagli utenti di quel componente aggiuntivo.
Distribuire le macro nelle librerie di script
Non puoi distribuire le definizioni delle macro utilizzando le librerie di Apps Script .
Utilizzare le macro al di fuori di Fogli
Le macro sono una funzionalità disponibile solo in Fogli e non esistono per Documenti, Moduli o Presentazioni Google.