Restez organisé à l'aide des collections Enregistrez et classez les contenus selon vos préférences.
Les scripts peuvent étendre certains produits Google en ajoutant des éléments d'interface utilisateur qui, lorsqu'ils sont cliqués, exécutent une fonction Apps Script. L'exemple le plus courant consiste à exécuter un script à partir d'un élément de menu personnalisé dans Google Docs, Sheets, Slides ou Forms, mais les fonctions de script peuvent également être déclenchées en cliquant sur des images et des dessins dans Google Sheets.
Menus personnalisés dans Google Docs, Sheets, Slides ou Forms
Apps Script peut ajouter des menus dans Google Docs, Sheets, Slides ou Forms, chaque élément de menu étant associé à une fonction dans un script. (Dans Google Forms, les menus personnalisés ne sont visibles que par un éditeur qui ouvre le formulaire pour le modifier, et non par un utilisateur qui l'ouvre pour y répondre.)
Un script ne peut créer un menu que s'il est associé au document, à la feuille de calcul ou au formulaire. Pour afficher le menu lorsque l'utilisateur ouvre un fichier, écrivez le code du menu dans une fonction onOpen().
L'exemple ci-dessous montre comment ajouter un menu avec un élément, suivi d'un séparateur visuel, puis d'un sous-menu contenant un autre élément. (Notez que dans Google Sheets, sauf si vous utilisez la nouvelle version, vous devez utiliser la syntaxe addMenu() à la place. Les sous-menus ne sont pas possibles.) Lorsque l'utilisateur sélectionne l'un des éléments de menu, une fonction correspondante ouvre une boîte de dialogue d'alerte. Pour en savoir plus sur les types de boîtes de dialogue que vous pouvez ouvrir, consultez le guide des boîtes de dialogue et des barres latérales.
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 document, une feuille de calcul, une présentation ou un formulaire ne peuvent contenir qu'un seul menu portant un nom donné. Si le même script ou un autre script ajoute un menu portant le même nom, le nouveau menu remplace l'ancien. Vous ne pouvez pas supprimer les menus lorsque le fichier est ouvert. Toutefois, vous pouvez écrire votre fonction onOpen() pour ignorer le menu à l'avenir si une certaine propriété est définie.
Images et dessins cliquables dans Google Sheets
Vous pouvez également attribuer une fonction Apps Script à une image ou à un dessin dans Google Sheets, à condition que le script soit associé à la feuille de calcul. L'exemple ci-dessous montre comment configurer cette option.
Dans Google Sheets, sélectionnez l'élément de menu Extensions>Apps Script pour créer un script lié à la feuille de calcul.
Supprimez tout code éventuellement présent dans l'éditeur de scripts, puis collez dans ce dernier le code ci-dessous.
function showMessageBox() { Browser.msgBox('You clicked it!'); }
Revenez à Sheets et insérez une image ou un dessin en sélectionnant Insérer > Image ou Insérer > Dessin.
Après avoir inséré l'image ou le dessin, cliquez dessus. Un petit sélecteur de menu déroulant s'affiche en haut à droite. Cliquez dessus, puis sélectionnez Attribuer un script.
Dans la boîte de dialogue qui s'affiche, saisissez le nom de la fonction Apps Script que vous souhaitez exécuter, sans parenthèses (dans ce cas, showMessageBox). puis sur OK.
Cliquez à nouveau sur l'image ou le dessin. La fonction s'exécute désormais.
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/08/04 (UTC).
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Il n'y a pas l'information dont j'ai besoin","missingTheInformationINeed","thumb-down"],["Trop compliqué/Trop d'étapes","tooComplicatedTooManySteps","thumb-down"],["Obsolète","outOfDate","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Mauvais exemple/Erreur de code","samplesCodeIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 2025/08/04 (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,["Scripts 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\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\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."]]