Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
Os scripts podem estender determinados produtos do Google adicionando elementos de interface do usuário
que, quando clicados, executam uma função do Apps Script. O exemplo mais comum é
executar um script em um item de menu personalizado nos Documentos, Planilhas, Apresentações
ou Formulários Google, mas as funções de script também podem ser acionadas ao clicar em imagens e
desenhos nas Planilhas Google.
Menus personalizados nos apps Documentos, Planilhas, Apresentações ou Formulários Google
O Apps Script pode adicionar novos menus aos apps Documentos, Planilhas, Apresentações ou Formulários Google, com cada item de menu vinculado a uma função em um script. Nos Formulários Google, os menus personalizados ficam visíveis apenas para um editor que abre o formulário para modificá-lo, não para um usuário que abre o formulário para responder.
Um script só pode criar um menu se estiver vinculado ao documento, à planilha ou ao formulário.
Para mostrar o menu quando o usuário abrir um arquivo, escreva o código do menu em uma função
onOpen().
O exemplo abaixo mostra como adicionar um menu
com um item, seguido por um
separador visual e um
submenu que contém
outro item. (No Google Sheets, a menos que você esteja usando a
nova versão, use a sintaxe
addMenu(). Não é possível usar submenus.) Quando o usuário seleciona um dos itens de menu, uma função correspondente abre uma caixa de diálogo de alerta. Para mais
informações sobre os tipos de caixas de diálogo que podem ser abertas, consulte o
guia de caixas de diálogo e barras laterais.
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!');}
Um documento, planilha, apresentação ou formulário só pode conter um menu com um determinado nome. Se o mesmo script ou outro script adicionar um menu com o mesmo
nome, o novo menu vai substituir o antigo. Não é possível remover menus enquanto o arquivo está aberto, mas você pode escrever sua função onOpen() para pular o menu no futuro se uma determinada propriedade estiver definida.
Imagens e desenhos clicáveis nas Planilhas Google
Você também pode atribuir uma função do Apps Script a uma imagem ou um desenho nas Planilhas Google, desde que o script esteja vinculado à planilha. O exemplo abaixo mostra como configurar isso.
Nas Planilhas Google, selecione o item de menu Extensões>Apps Script para criar um script vinculado à planilha.
Apague o código no editor de script (se houver algum) e cole o código abaixo.
function showMessageBox() {
Browser.msgBox('You clicked it!');
}
Volte para as Planilhas e insira uma imagem ou um desenho selecionando
Inserir > Imagem ou Inserir > Desenho.
Depois de inserir a imagem ou o desenho, clique nele. Um pequeno menu suspenso
aparece no canto superior direito. Clique nele e escolha Atribuir script.
Na caixa de diálogo que aparece, digite o nome da função do Apps Script
que você quer executar, sem parênteses. Neste caso, showMessageBox.
Clique em OK.
Clique na imagem ou no desenho de novo. A função é executada.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Não contém as informações de que eu preciso","missingTheInformationINeed","thumb-down"],["Muito complicado / etapas demais","tooComplicatedTooManySteps","thumb-down"],["Desatualizado","outOfDate","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Problema com as amostras / o código","samplesCodeIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 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."]]