Google Workspace 中的自訂選單

指令碼可以新增使用者介面元素,藉此擴充特定 Google 產品 該元件點選後,就會執行 Apps Script 函式最常見的例子是 在 Google 文件、試算表、簡報 或表單,但您也可以點選圖片來觸發指令碼函式 在 Google 試算表中繪圖

Google 文件、試算表、簡報或表單的自訂選單

Apps Script 可在 Google 文件、試算表、簡報、 或表單 每個選單項目都會與指令碼中的函式相連結。(在 Google 表單中自訂選單 只有開啟表單進行修改的編輯者才能看到,無法查看 開啟表單以便回覆)。

指令碼必須符合下列條件,才能建立選單: 繫結至文件、試算表或表單。 如要在使用者開啟檔案時顯示選單,請在 onOpen() 函式。

以下範例說明如何新增選單 後面是 1 個項目,後面加上 視覺化分隔符,然後 子選單,其中包含 另一個項目(請注意,在 Google 試算表中使用 新版本,您必須使用 addMenu()敬上 語法,無法使用子選單)。使用者選取 選單項目時,對應的函式會開啟 「alert」對話方塊。如要 請參閱 對話方塊和側欄指南

function onOpen() {
  var ui = SpreadsheetApp.getUi();
  // Or DocumentApp, SlidesApp or FormApp.
  ui.createMenu('Custom Menu')
      .addItem('First item', 'menuItem1')
      .addSeparator()
      .addSubMenu(ui.createMenu('Sub-menu')
          .addItem('Second item', 'menuItem2'))
      .addToUi();
}

function menuItem1() {
  SpreadsheetApp.getUi() // Or DocumentApp, SlidesApp or FormApp.
     .alert('You clicked the first menu item!');
}

function menuItem2() {
  SpreadsheetApp.getUi() // Or DocumentApp, SlidesApp or FormApp.
     .alert('You clicked the second menu item!');
}

文件、試算表、簡報或表單只能包含一個選單 一個特定的名稱如果相同的指令碼或其他指令碼新增的選單 新選單就會取代舊選單檔案時無法移除選單 但您可以撰寫 onOpen() 函式,讓選單略過 屬性 (如果已設定特定屬性)。

Google 試算表中的可點擊圖片和繪圖

您也可以在 Google 試算表中指派 Apps Script 函式給圖片或繪圖, 前提是指令碼繫結至 試算表。以下範例說明如何設定。

  1. 在 Google 試算表中,選取選單項目「擴充功能」> Apps Script 用於建立 繫結至試算表的指令碼
  2. 刪除指令碼編輯器中的任何程式碼,然後貼上下方的程式碼。

      function showMessageBox() {
        Browser.msgBox('You clicked it!');
      }
    
  3. 請返回 Google 試算表,選取後即可插入圖片或繪圖 插入 >圖片插入>繪圖

  4. 插入圖片或繪圖後,按一下圖片或繪圖。小型下拉式選單 選取器位於右上角按一下並選擇 指派指令碼

  5. 在隨即顯示的對話方塊中,輸入 Apps Script 函式的名稱 但要不要使用括號執行,在本例中為 showMessageBox。 按一下「OK」

  6. 再按一下圖片或繪圖。現在函式就會執行。