指令碼可以新增使用者介面元素,藉此擴充特定 Google 產品 該元件點選後,就會執行 Apps Script 函式最常見的例子是 在 Google 文件、試算表、簡報 或表單,但您也可以點選圖片來觸發指令碼函式 在 Google 試算表中繪圖
Google 文件、試算表、簡報或表單的自訂選單
Apps Script 可在 Google 文件、試算表、簡報或表單中新增選單,每個選單項目都會連結至指令碼中的函式。(在 Google 表單中自訂選單 只有開啟表單進行修改的編輯者才能看到,無法查看 開啟表單以便回覆)。
指令碼必須符合下列條件,才能建立選單:
繫結至文件、試算表或表單。
如要在使用者開啟檔案時顯示選單,請在
onOpen()
函式。
以下範例說明如何新增選單
後面是 1 個項目,後面加上
視覺化分隔符,然後
子選單,其中包含
另一個項目(請注意,在 Google 試算表中使用
新版本,您必須使用
addMenu()
敬上
語法,無法使用子選單)。當使用者選取任一選單項目時,對應的函式會開啟警示對話方塊。如要進一步瞭解可開啟的對話方塊類型,請參閱對話方塊和側欄指南。
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 函式給圖片或繪圖, 前提是指令碼繫結至 試算表。以下範例說明如何設定這項功能。
- 在 Google 試算表中,選取選單項目「擴充功能」> Apps Script 用於建立 繫結至試算表的指令碼
刪除指令碼編輯器中的任何程式碼,然後貼上下方的程式碼。
function showMessageBox() { Browser.msgBox('You clicked it!'); }
請返回 Google 試算表,選取後即可插入圖片或繪圖 插入 >圖片或插入>繪圖。
插入圖片或繪圖後,按一下圖片或繪圖。小型下拉式選單 選取器位於右上角按一下並選擇 指派指令碼。
在隨即顯示的對話方塊中,輸入 Apps Script 函式的名稱 但要不要使用括號執行,在本例中為
showMessageBox
。 按一下「OK」。再按一下圖片或繪圖。現在函式就會執行。