Mantieni tutto organizzato con le raccolte
Salva e classifica i contenuti in base alle tue preferenze.
Gli script possono estendere determinati prodotti Google aggiungendo elementi dell'interfaccia utente
che, quando vengono selezionati, eseguono una funzione Apps Script. L'esempio più comune è
l'esecuzione di uno script da una voce di menu personalizzata in Documenti, Fogli, Presentazioni
o Moduli Google, ma le funzioni dello script possono essere attivate anche facendo clic su immagini e
disegni in Fogli Google.
Menu personalizzati in Documenti, Fogli, Presentazioni o Moduli Google
Apps Script può aggiungere nuovi menu in Documenti, Fogli, Presentazioni
o Moduli Google, con
ogni voce di menu collegata a una funzione in uno script. In Moduli Google, i menu personalizzati sono visibili solo a un editor che apre il modulo per modificarlo, non a un utente che lo apre per rispondere.
Uno script può creare un menu solo se è
associato al documento, al foglio di lavoro o al modulo.
Per visualizzare il menu quando l'utente apre un file, scrivi il codice del menu all'interno di una funzione
onOpen().
L'esempio seguente mostra come aggiungere un menu
con un elemento, seguito da un
separatore visivo, quindi un
sottomenu che contiene
un altro elemento. Tieni presente che in Fogli Google, a meno che tu non stia utilizzando la
nuova versione, devi utilizzare la
sintassi addMenu() e i sottomenu non sono possibili. Quando l'utente seleziona una delle voci di menu, una funzione corrispondente apre una finestra di dialogo di avviso. Per maggiori
informazioni sui tipi di finestre di dialogo che puoi aprire, consulta la
guida alle finestre di dialogo e alle barre laterali.
functiononOpen(){varui=SpreadsheetApp.getUi();//OrDocumentApp,SlidesApporFormApp.ui.createMenu('Custom Menu').addItem('First item','menuItem1').addSeparator().addSubMenu(ui.createMenu('Sub-menu').addItem('Second item','menuItem2')).addToUi();}functionmenuItem1(){SpreadsheetApp.getUi()//OrDocumentApp,SlidesApporFormApp..alert('You clicked the first menu item!');}functionmenuItem2(){SpreadsheetApp.getUi()//OrDocumentApp,SlidesApporFormApp..alert('You clicked the second menu item!');}
Un documento, un foglio di lavoro, una presentazione o un modulo può contenere un solo menu con
un determinato nome. Se lo stesso script o un altro script aggiunge un menu con lo stesso
nome, il nuovo menu sostituisce quello precedente. I menu non possono essere rimossi mentre il file è aperto, anche se puoi scrivere la funzione onOpen() per saltare il menu in futuro se è impostata una determinata proprietà.
Immagini e disegni cliccabili in Fogli Google
Puoi anche assegnare una funzione Apps Script a un'immagine o a un disegno in Fogli Google,
a condizione che lo script sia associato al
foglio di lavoro. L'esempio seguente mostra come configurarlo.
In Fogli Google, seleziona la voce di menu Estensioni>Apps Script per creare uno
script associato al foglio di lavoro.
Elimina qualsiasi codice nell'editor di script e incolla il codice riportato di seguito.
function showMessageBox() {
Browser.msgBox('You clicked it!');
}
Torna a Fogli e inserisci un'immagine o un disegno selezionando
Inserisci > Immagine o Inserisci > Disegno.
Dopo aver inserito l'immagine o il disegno, fai clic. Nell'angolo in alto a destra viene visualizzato un piccolo selettore di menu a discesa. Fai clic e scegli
Assegna copione.
Nella finestra di dialogo visualizzata, digita il nome della funzione Apps Script
che vuoi eseguire, senza parentesi. In questo caso, showMessageBox.
Fai clic su Ok.
Fai di nuovo clic sull'immagine o sul disegno. Ora la funzione viene eseguita.
[[["Facile da capire","easyToUnderstand","thumb-up"],["Il problema è stato risolto","solvedMyProblem","thumb-up"],["Altra","otherUp","thumb-up"]],[["Mancano le informazioni di cui ho bisogno","missingTheInformationINeed","thumb-down"],["Troppo complicato/troppi passaggi","tooComplicatedTooManySteps","thumb-down"],["Obsoleti","outOfDate","thumb-down"],["Problema di traduzione","translationIssue","thumb-down"],["Problema relativo a esempi/codice","samplesCodeIssue","thumb-down"],["Altra","otherDown","thumb-down"]],["Ultimo aggiornamento 2025-08-31 UTC."],[[["\u003cp\u003eApps Script allows you to extend Google products like Docs, Sheets, Slides, and Forms by adding custom menus and clickable elements that trigger script functions.\u003c/p\u003e\n"],["\u003cp\u003eCustom menus can be created within these Google products, with each menu item linked to a specific function in your script, enhancing user interaction and functionality.\u003c/p\u003e\n"],["\u003cp\u003eIn Google Sheets, you can assign Apps Script functions to images and drawings, making them interactive elements that execute code when clicked in a web browser.\u003c/p\u003e\n"]]],[],null,["# Custom Menus in Google Workspace\n\nScripts can extend certain Google products by adding user-interface elements\nthat, when clicked, execute an Apps Script function. The most common example is\nrunning a script from a custom menu item in Google Docs, Sheets, Slides,\nor Forms, but script functions can also be triggered by clicking on images and\ndrawings in Google Sheets.\n\nCustom menus in Google Docs, Sheets, Slides, or Forms\n-----------------------------------------------------\n\nApps Script can add new menus in Google Docs, Sheets, Slides,\nor Forms, with\neach menu item tied to a function in a script. (In Google Forms, custom menus\nare visible only to an editor who opens the form to modify it, not to a user who\nopens the form to respond.)\n\nA script can only create a menu if it is\n[bound](/apps-script/scripts_containers) to the document, spreadsheet, or form.\nTo display the menu when the user opens a file, write the menu code within an\n[`onOpen()`](/apps-script/understanding_triggers) function.\n\nThe example below shows how to add a [menu](/apps-script/reference/base/menu)\nwith one item, followed by a\n[visual separator](/apps-script/reference/base/menu#addSeparator()), then a\n[sub-menu](/apps-script/reference/base/menu#addSubMenu(Menu)) that contains\nanother item. (Note that in Google Sheets, unless you're using the\n[new version](https://support.google.com/drive/answer/3541068), you must use the\n[`addMenu()`](/apps-script/reference/spreadsheet/spreadsheet#addMenu(String,Object))\nsyntax instead, and sub-menus are not possible.) When the user selects either\nmenu item, a corresponding function opens an\n[alert](/apps-script/reference/base/ui#alert(String)) dialog. For more\ninformation on the types of dialogs you can open, see the\n[guide to dialogs and sidebars](/apps-script/guides/dialogs). \n\n function onOpen() {\n var ui = SpreadsheetApp.getUi();\n // Or DocumentApp, SlidesApp or FormApp.\n ui.createMenu('Custom Menu')\n .addItem('First item', 'menuItem1')\n .addSeparator()\n .addSubMenu(ui.createMenu('Sub-menu')\n .addItem('Second item', 'menuItem2'))\n .addToUi();\n }\n\n function menuItem1() {\n SpreadsheetApp.getUi() // Or DocumentApp, SlidesApp or FormApp.\n .alert('You clicked the first menu item!');\n }\n\n function menuItem2() {\n SpreadsheetApp.getUi() // Or DocumentApp, SlidesApp or FormApp.\n .alert('You clicked the second menu item!');\n }\n\nA document, spreadsheet, presentation, or form can only contain one menu with\na given name. If the same script or another script adds a menu with the same\nname, the new menu replaces the old. Menus cannot be removed while the file\nis open, although you can write your `onOpen()` function to skip the menu in\nthe future if a certain [property](/apps-script/guides/properties) is set.\n| **Note:** [Editor add-ons](/workspace/add-ons/concepts/types#editor_add-ons) can have menu items as well, but use [special rules](/workspace/add-ons/concepts/menus) they are defined.\n\nClickable images and drawings in Google Sheets\n----------------------------------------------\n\nYou can also assign an Apps Script function to an image or drawing in Google Sheets,\nso long as the script is [bound](/apps-script/scripts_containers) to the\nspreadsheet. The example below shows how to set this up.\n\n1. In Google Sheets, select the menu item **Extensions** \\\u003e **Apps Script** to create a script that is bound to the spreadsheet.\n2. Delete any code in the script editor and paste in the code below.\n\n function showMessageBox() {\n Browser.msgBox('You clicked it!');\n }\n\n3. Return to Sheets and insert an image or drawing by selecting\n **Insert \\\u003e Image** or **Insert \\\u003e Drawing**.\n\n4. After inserting the image or drawing, click it. A small drop-down menu\n selector appears in the top right-hand corner. Click it and choose\n **Assign script**.\n\n5. In the dialog box that appears, type the name of the Apps Script function\n that you want to run, without parentheses --- in this case, `showMessageBox`.\n Click **OK**.\n\n6. Click the image or drawing again. The function now executes.\n\n| **Note:** The script execution is only triggered by clicking the image or drawing in a web browser. The script doesn't execute if the image or drawing is clicked on mobile."]]