Google 試算表適用的 Apps Script 基礎知識 #1:巨集和自訂函式

1. 歡迎使用 Apps Script

什麼是 Apps Script?

Apps Script 是一個應用程式快速開發平台,可自動化、自訂及擴充 Google Workspace 體驗。透過 Apps Script,您可以簡化 Google Workspace 中繁瑣或複雜的工作,節省時間和精力。

Apps Script 功能包括:

  • Apps Script 的內建服務可讓您透過指令碼讀取、更新及操控 Google Workspace 應用程式資料。
  • 您可以使用 Apps Script 的瀏覽器內建程式碼編輯器建立指令碼,不必安裝或執行程式碼開發軟體。
  • 您可以為 Google Workspace 編輯器設計使用者介面,讓使用者直接透過這些編輯器,使用選單項目、對話方塊和側欄啟動指令碼。

這個「Google 試算表適用的 Apps Script 基礎知識」程式碼研究室播放清單,會介紹 Apps Script 的基本概念,以及如何使用這項工具提升 Google 試算表體驗。本程式碼研究室著重於教學 Apps Script 基礎知識。

試算表服務

您可以使用 Apps Script 擴充 Google 試算表,節省時間和精力。Apps Script 提供 Spreadsheet 服務,可讓指令碼與 Google 試算表檔案及其中所含的資料互動。您可以使用這項服務自動執行下列常見的試算表工作:

  • 建立或修改試算表。
  • 讀取及更新儲存格資料、公式和格式。
  • 建立自訂按鈕和選單。
  • 從其他 Google 應用程式或第三方來源匯入及匯出資料。
  • 共用試算表及控管存取權。

課程內容

這份播放清單涵蓋所有主題,協助您開始使用 Apps Script 搭配 Google 試算表:

  1. 巨集和自訂函式
  2. 試算表、工作表和範圍
  3. 處理資料
  4. 資料格式
  5. 在 Google 簡報中製作圖表及呈現資料

建議依序閱讀本播放清單中的程式碼研究室,從這個開始,然後依序完成,以獲得最佳學習體驗。

請前往下一節,進一步瞭解本程式碼研究室的內容。

2. 簡介

歡迎來到本播放清單的第一個程式碼研究室。在本程式碼研究室中,您將瞭解如何搭配使用 Apps Script 和 Google 試算表。具體來說,本程式碼研究室著重於兩項重要概念:巨集自訂函式

巨集是指在 Google 試算表中錄製的一連串動作。錄製完成後,你可以啟用巨集,稍後透過選單項目或快速鍵重複這些動作。您可以在 Google 試算表和 Apps Script 程式碼編輯器中,建立及更新自己的巨集。

您也可以在 Apps Script 程式碼編輯器中建立自訂函式。與 Google 試算表提供的內建函式 (例如 SUMAVERAGE) 類似,您可以使用 Apps Script 編寫自己的自訂函式,執行簡單或特定作業 (例如轉換或字串串連)。建立完成後,您可以在 Google 試算表中呼叫這些函式,就像呼叫內建函式一樣。您也可以在撰寫的儲存格公式中使用自訂函式,並視需要與其他函式合併使用。

請詳閱下文,瞭解本程式碼研究室涉及的概念和規定。

課程內容

  • 如何建立 Google 試算表指令碼。
  • 如何瀏覽 Apps Script 編輯器。
  • 如何建立及更新巨集。
  • 如何建立第一個 Google 試算表自訂函式。

軟硬體需求

您已完成簡介。如要開始使用巨集,請參閱下一節。

3. 在 Google 試算表中建立巨集

一般來說,在試算表中工作時,您可能會陷入重複動作的迴圈,例如複製儲存格值、設定格式、建立公式等,這些動作可能會變得單調乏味,導致錯誤。如要自動執行重複動作,可以使用 Google 試算表的巨集。巨集可讓你「錄製」試算表中的一系列動作。錄製巨集後,只要按下快速鍵,就能在試算表中的其他位置重複執行相同動作。

本節將說明如何在 Google 試算表中建立巨集。下一節將說明如何使用 Apps Script 建構巨集。

事前準備

繼續操作前,請先準備含有資料的試算表。我們已提供一份範本:按一下這個連結即可複製資料表,然後點選「建立副本」

5b8aded1bb349ecf.png

系統會在您的 Google 雲端硬碟資料夾中放置一份範例試算表副本,並命名為「Copy of Top 10 Highest Grossing Films (2018)」。

建立巨集

現在您已開啟試算表,可以開始在 Google 試算表中錄製巨集。在本範例中,您將建立巨集,為資料的標題列設定格式。只要按照下列步驟進行即可:

  1. 按一下 A1 儲存格,將游標放在該列中。這是標題列。
  2. 在選單中,依序選取「擴充功能」>「巨集」>「錄製巨集」

開始錄製後,Google 試算表會記住你在試算表中的每個動作,包括醒目顯示儲存格、新增資料、切換至其他工作表、設定格式等。儲存並啟用巨集後,這些動作就會成為重複執行的「指令碼」。

  1. 在「巨集」對話方塊中,選取「相對參照」

c59f2f12317352d2.gif

  1. 選取「第 1 列」

1d782ee30c66a02b.gif

  1. 將頂端列的「填滿顏色」從白色改為「深洋紅色 3」

f7e7abaf76e338c7.png

  1. 將頂端列的「文字顏色」從黑色變更為白色

d5e630acbe83148.png

  1. 如要將文字設為粗體,請按 Ctrl+B 鍵 (或 macOS 上的 Cmd+B 鍵)。
  2. 如要凍結頂端列,請依序選取「檢視」>「凍結」>「1 列」

97cb244ffebe8953.png

  1. 在巨集對話方塊中按一下「儲存」。系統會顯示新的對話方塊,要求您為巨集命名。輸入「Header」名稱,然後按一下「儲存」

b4610a54340da518.gif

您已透過 Google 試算表的使用者介面,建立專門用於格式化標題的巨集。

4ed7fbed18ea3681.png

啟用巨集

如要在 Google 試算表中使用新巨集,請按照下列操作說明執行:

  1. 如要建立工作表,請按一下「新增工作表」圖示 9c9b0c19bf317e7f.png

927c012b4e11475b.png

  1. 在新工作表的 A1:C2 中新增一些文字。歡迎參考下列範例輸入內容:

c3aadaef52a609bf.png

  1. 選取第一個資料列。

cfe36fcf833d0bd7.gif

  1. 如要將巨集套用至所選區域,請依序按一下「擴充功能」>「巨集」>「標題」
  2. 按照畫面上的指示授權巨集。
  1. 重複步驟 4,再次執行巨集 (授權會停止第一次執行)。

恭喜!您已學會如何在 Google 試算表中套用巨集。試算表應如下所示:

7c7130a4a697bd92.png

巨集可協助您有效率地建立試算表,在本程式碼研究室的下一部分,您將瞭解如何讓巨集發揮更強大的功能。訣竅是:錄製巨集時,您實際上是在編寫 Apps Script 程式碼。在幕後,Google 試算表會建構與巨集動作相符的程式碼。下一節將說明如何使用 Apps Script 的瀏覽器內編輯器直接修改程式碼。

4. 指令碼編輯器中的巨集

建立巨集時,Google 試算表會將您的動作儲存為 Apps Script 函式。啟用巨集後,Google 試算表會呼叫 Apps Script 函式,以相同順序套用這些動作。

指令碼編輯器

巨集建立完成後,您就能查看程式碼。如要查看巨集指令碼,請依序點選「擴充功能」>「Apps Script」,開啟 Apps Script 的瀏覽器程式碼編輯器。

您可以在指令碼編輯器中編寫 Apps Script 程式碼,並在 Google 伺服器上執行這些指令碼。

macros.gs」的分析

查看目前的指令碼。錄製Header巨集時,試算表會建立 macros.gs 指令碼檔案,並填入名為 Header 的對應 Apps Script 函式。啟用 Header 巨集時,試算表會執行這項函式。

請參閱下圖,熟悉 Apps Script 中巨集函式的結構。如果您以不同順序記錄步驟,或在記錄時點選試算表中的其他位置,程式碼可能會與上述範例略有不同。

5d653a69a0897adf.png

第一行是會影響授權的註解註解:

/** @OnlyCurrentDoc */

大多數指令碼都會先要求使用者授予權限,才能執行。這些權限可控管使用者允許指令碼執行的動作。如果指令碼專案中含有 @OnlyCurrentDoc 註解,Apps Script 只會要求存取及更新目前試算表的權限。如果沒有這則註解,Apps Script 會要求存取及更新使用者所有試算表的權限。如果您只處理單一檔案,建議一律加入這項註解。巨集記錄器會自動為您新增這則註解。

如要瞭解 Apps Script 如何表示巨集的指令,可以查看函式:

function Header(){
  var spreadsheet = SpreadsheetApp.getActive();
  var sheet = spreadsheet.getActiveSheet();
  sheet.getRange(
    spreadsheet.getCurrentCell().getRow(),
    1, 1, sheet.getMaxColumns()).activate();
  spreadsheet.getActiveRangeList().setBackground('#4c1130')
  .setFontColor('#ffffff')
  .setFontWeight('bold');
  spreadsheet.getActiveSheet().setFrozenRows(1);
};

啟用 Header 巨集時,系統會執行這段程式碼。function 後方的標籤 Header() 會定義函式的名稱和參數。請注意,Header() 不需要任何參數,因為 Apps Script 中的巨集函式不需要輸入內容。在大括號中,一律會括住 Apps Script 函式的主體。

這個播放清單中的後續程式碼研究室,會說明建立巨集時涉及的類別和概念。目前您可以先參考下列程式碼說明,大致瞭解巨集的元件及其建構巨集時扮演的角色。請看第一行:

var spreadsheet = SpreadsheetApp.getActive();

在這裡,getActive() 會傳回代表 Google 試算表中目前作用中試算表檔案的物件,並將其設為新的 spreadsheet 變數。

var sheet = spreadsheet.getActiveSheet();
sheet.getRange(
    spreadsheet.getCurrentCell().getRow(),
    1, 1, sheet.getMaxColumns()).activate();

這些線條對應於點選第一列以醒目顯示的操作。這稱為「啟用」。第一行會將目前的試算表儲存在 sheet 變數中,第二行則會使用 getRange() 方法取得整個第一列,然後呼叫 activate() 啟用該列。第一列是使用特定列和欄號碼指定。spreadsheet.getCurrentCell().getRow() 呼叫會傳回目前的列數,而 sheet.getMaxColumns() 則會傳回工作表中的最大欄數。

spreadsheet.getActiveRangeList().setBackground('#4c1130')
.setFontColor('#ffffff')
.setFontWeight('bold');

這段程式碼會變得更加複雜。如要使用 spreadsheet 有效率地呼叫方法,程式碼會將三個方法堆疊到 getActiveRangeList() 上,避免程式碼重複呼叫這個 spreadsheet 方法。隨著您使用 Apps Script 編寫更多程式碼,您會更加熟悉在一個類別上呼叫多種方法的慣例 (也稱為「方法鏈結」)。目前,您可以閱讀下列內容,簡要瞭解程式碼區塊中的每種方法:

最後一行會凍結巨集的第一列:

spreadsheet.getActiveSheet().setFrozenRows(1);

這就是錄製巨集時產生的指令碼。不必擔心上述提及的任何不熟悉字詞或方法。這段說明旨在引導您思考 Apps Script 在一般巨集函式中著重的概念,以及日後程式碼研究室會深入探討的主題。

下一節將著重於操控 Header() 函式的程式碼,說明如何使用指令碼編輯器進一步個人化巨集。

使用 Apps Script 自訂巨集

Apps Script 編輯器會顯示您先前在 Google 試算表中建立的巨集。調整函式主體內容後,您就能進一步自訂巨集指令,採取不同或額外的動作。下列練習會示範使用指令碼編輯器操控巨集的各種方式。

變更受影響的儲存格

假設您想修改巨集,只影響第一列的前 10 欄,而不是整列。你可以刪除巨集並重新錄製,不過,您可以使用 Apps Script 編輯器直接進行這些變更。方法如下:

  1. 在指令碼編輯器中,將 sheet.getMaxColumns() 替換為 10。這項編輯作業會變更巨集在試算表中的影響範圍
/** @OnlyCurrentDoc */

function Header(){
  var spreadsheet = SpreadsheetApp.getActive();
  var sheet = spreadsheet.getActiveSheet();
  sheet.getRange(
    spreadsheet.getCurrentCell().getRow(),
    1, 1, 10).activate();
    /* sheet.getMaxColumns() replaced with 10.*/
  spreadsheet.getActiveRangeList().setBackground('#4c1130')
  .setFontColor('#ffffff')
  .setFontWeight('bold');
  spreadsheet.getActiveSheet().setFrozenRows(1);
}
  1. 如要儲存指令碼,請按一下「儲存」圖示 儲存
  2. 如要重新命名專案,請輸入「巨集和自訂函式」做為新專案名稱,然後按一下「重新命名」
  3. 如要建立工作表,請在 Google 試算表中按一下「新增工作表」圖示 9c9b0c19bf317e7f.png

927c012b4e11475b.png

  1. 在指令碼編輯器中,從函式清單選取 Header,然後按一下「執行」

新工作表應會顯示下列結果:

8a58ba02535b2b9c.png

修改有效或目標範圍後,巨集現在只會影響第一列的部分內容。許多 Apps Script 方法會將範圍或 A1 標記法做為參數,指定要對哪些儲存格執行動作。

接下來,我們來瞭解如何自訂巨集顏色。

變更巨集的顏色

如要設計試算表巨集或其他元素的色彩配置,Apps Script 可以修改範圍的填滿或文字顏色。請按照下列指示操作,瞭解如何自訂巨集的顏色。

以下說明如何變更巨集的背景顏色:

  1. 在 Google 試算表中,切換回包含原始資料的工作表 (工作表 1)。
  2. 按一下第一列,使其呈現醒目顯示的選取狀態。
  3. 在指令碼編輯器中,將背景顏色 #4c1130 取代為 #afeeee。這些值會使用十六進位三元組標記表示不同顏色。
/** @OnlyCurrentDoc */

function Header(){
  var spreadsheet = SpreadsheetApp.getActive();
  var sheet = spreadsheet.getActiveSheet();
  sheet.getRange(
    spreadsheet.getCurrentCell().getRow(),
    1, 1, 10).activate();
  spreadsheet.getActiveRangeList().setBackground('#afeeee')
    /* #4c1130 replaced with #afeeee.*/
  .setFontColor('#ffffff')
  .setFontWeight('bold');
  spreadsheet.getActiveSheet().setFrozenRows(1);
}
  1. 如要儲存指令碼,請按一下「儲存」圖示 儲存
  2. 從函式清單中選取 Header,然後按一下「執行」

在 Google 試算表中,第一列前 10 欄的背景填滿顏色會重新著色為自訂的土耳其藍:

bbd26f7c8e35039.png

setBackground(color) 參數中的十六進位顏色標記#4c1130 (深紫紅色 3) 切換為 #afeeee (淺綠松石色,這個選項無法在 Google 試算表的預設顏色選單中存取),即可變更巨集背景顏色的顏色屬性。

您現在已透過巨集修改背景顏色組合。如要一併變更文字顏色,請變更第二個顏色代碼。

  1. 在 Google 試算表中,按一下第一列,確認該列仍處於醒目顯示狀態。
  2. 在指令碼編輯器中,將字型顏色 #ffffff 替換為 #191970。這會導致巨集將字型顏色設為深藍色。
/** @OnlyCurrentDoc */

function Header(){
  var spreadsheet = SpreadsheetApp.getActive();
  var sheet = spreadsheet.getActiveSheet();
  sheet.getRange(
    spreadsheet.getCurrentCell().getRow(),
    1, 1, 10).activate();
  spreadsheet.getActiveRangeList().setBackground('#afeeee')
  .setFontColor('#191970')/* #ffffff replaced with #191970.*/
  .setFontWeight('bold');
  spreadsheet.getActiveSheet().setFrozenRows(1);
}
  1. 如要儲存指令碼,請按一下「儲存」圖示 儲存
  2. 從函式清單中選取 Header,然後按一下「執行」

返回 Google 試算表,即可看到標題列的文字顏色現在為深藍色。

2eaf2fb4879e1b36.png

現在您已瞭解巨集實際上是記錄為 Apps Script 程式碼的試算表動作。在下一節中,您將瞭解 Apps Script 如何透過自訂函式協助您處理 Google 試算表。

5. 編寫第一個指令碼:自訂函式

與大多數試算表應用程式一樣,Google 試算表內建多個公式函式 (例如 =SUM()),可快速計算試算表資料。自訂函式是指您使用 Apps Script 指定的函式。定義自訂函式後,您可以在試算表的任何位置使用該函式,就像內建函式一樣。

本節說明如何在 Apps Script 中建立自訂函式,進行貨幣換算。

建立指令碼檔案

使用「巨集」一節中的相同試算表和指令碼專案,按照下列操作說明建立新指令碼 (最終可用於建立第一個自訂函式):

  1. 如要建立 Apps Script 檔案,請返回指令碼編輯器。
  2. 在「檔案」旁邊,依序點按「新增檔案」圖示 新增檔案「指令碼」
  3. 將新指令碼檔案命名為 customFunctions,然後按下 Enter 鍵。(Apps Script 會自動在指令碼檔案名稱結尾加上 .gs 副檔名)。

編輯器中會顯示名為 customFunctions.gs 的新分頁。

您已建立專為自訂函式設計的指令碼,現在可以填入程式碼。

將美元換算為瑞士法郎

假設您想修改「2018 年十大賣座電影」的資料,除了以美元顯示全球票房價值,也想以瑞士法郎顯示。使用自訂函式,即可輕鬆完成這項操作。下列練習會示範如何建立自訂函式,將美元值轉換為法郎值。

撰寫第一個自訂函式前,請先修改資料集,讓函式顯示正確的輸出內容。步驟如下:

  1. 在 Google 試算表中,按一下滑鼠右鍵選取H 欄
  2. 在隨即顯示的選單中,按一下「在右側插入 1 個」

顯示「向右插入 1 欄」的選單

  1. 在儲存格 I1 中,將欄標示為「Worldwide_Gross (Swiss francs)」。

現在您有可儲存轉換自訂函式結果的資料欄。接著,您可以使用指令碼編輯器建立第一個自訂函式。

  1. customFunctions.gs 中,將 myFunction() 的程式碼替換成以下程式碼:
/**
 * Converts US dollars to Swiss francs.
 *
 * @param {number} dollars The total number of dollars.
 * @return {number} swissFrancs The converted total of Swiss francs.
 * @customfunction
 */
function USDTOCHF(dollars){
  var swissFrancs = dollars * .99; 
  return swissFrancs;
}

這段程式碼會將美元換算為瑞士法郎。請按照下列操作說明,瞭解如何在試算表中執行自訂函式。

  1. 如要儲存指令碼,請按一下「儲存」圖示 儲存
  2. 在 Google 試算表中,選取 I2 儲存格。
  3. 在函式列中輸入 =USDTOCHF(H2)

如要將公式套用至該欄的其餘儲存格,請按照下列步驟操作:

  1. 將游標移至 I2 儲存格的右下角,然後選取藍色小方塊 (游標指向藍色方塊時應會變成 9c9b0c19bf317e7f.png)。
  2. 向下拖曳藍色方塊,醒目顯示 I3:I11 範圍。

3cf46560d6cea0de.gif

現在,I 欄會列出 H 欄中美元價值的瑞士法郎轉換值。

7fc06b3d7e3e2a9.png

恭喜,您已建立第一個自訂函式。下一節將說明組成 USDTOCHF() 的程式碼。

USDTOCHF()」的分析

初始註解會詳細說明程式碼的用途:

/**
 * Converts US dollars to Swiss francs.
 *
 * @param {number} dollars The total number of dollars.
 * @return {number} swissFrancs The provided value in Swiss francs.
 * @customfunction
 */

程式設計中經常會使用這類註解區塊,說明函式的作用。

在這個註解中,您可以看到兩個部分:函式說明 (將美元換算為法郎),以及說明函式參數和傳回類型的註解。

透過註解,Apps Script 會使用 JSDoc 協助您記錄程式碼並建立自動完成提示。請參閱下文,瞭解 USDTOCHF() 中使用的各項註解如何協助您開發 Apps Script:

  • @param:您可以使用 @param 註解,說明傳遞至函式的每個參數。
  • @return:您可以使用 @return 註解說明函式傳回的內容。
  • @customfunction:您應一律在任何自訂函式的說明文件註解中加入 @customfunction。這項註解會通知 Google 試算表自動完成自訂函式,就像您在儲存格中輸入函式名稱時,Google 試算表會自動完成內建函式一樣,如下所示:

d8680ab6efae97ac.gif

請注意,自動完成彈出式視窗中顯示的文字,與您放在註解區塊中的說明文字完全一致。請務必撰寫完整且清楚的說明,讓自訂函式更容易使用。

接著,請著重於 USDTOCHF() 函式中的程式碼:

function USDTOCHF(dollars){
  var swissFrancs = dollars * .99; 
  return swissFrancs;
}

如先前所述,USDTOCHF() 會採用數字變數 dollars,將其乘以固定匯率,然後在數字變數 swissFrancs 中傳回轉換為瑞士法郎的值。輸入參數是將自訂函式新增至儲存格時,指定儲存格內含的值。在本例中,輸入的金額來自 H 欄。輸出值 swissFrancs 會放在函式的儲存格中 (本例為 I 欄)。

自訂函式可處理數值或字串值,詳情請見下一節。

串連字串前置字元

假設您希望函式 USDTOCHF() 的數字輸出內容包含瑞士法郎前置字元 CHF,您可以使用 Apps Script 和串連運算子 (+), 執行這項操作,如下列操作說明所示:

  1. 在指令碼編輯器中,更新 @return 註解,傳回字串而非數字。
  2. return swissFrancs 變更為 return 'CHF' + swissFrancs

+ 運算子會將 CHF 字串附加至 swissFrancs 所含值的前方。您的程式碼現在應如下所示:

/**
 * Converts US dollars to Swiss francs.
 *
 * @param {number} dollars The total number of dollars.
 * @return {string} swissFrancs The provided value in Swiss francs.
 * @customfunction
 */
function USDTOCHF(dollars){
  var swissFrancs = dollars * .99;
  return 'CHF' + swissFrancs;
}
  1. 如要儲存指令碼,請按一下「儲存」圖示 儲存

瑞士法郎字串現在會做為第 I 欄值的字首:

20e4bfb7f0a994ea.png

現在,自訂函式不僅會將美元換算為瑞士法郎,還會輸出附有字串前置字元的幣別。

進階:擷取外部資料

這是基本自訂函式的不錯起點,但這個範例假設美元兌瑞士法郎的匯率維持不變。假設您想使用當前匯率,因此每次重新載入試算表時,系統都會重新計算值,以反映當前換算結果。為此,您需要找出目前的匯率。Google 試算表不會直接提供這項資訊,但您可以使用 Apps Script 取得。

您可以使用下列程式碼,取得瑞士法郎兌美元的目前匯率:

function USDTOCHF(dollars){
  // Gets a cache that is common to all users of the script.
  var cache = CacheService.getScriptCache();

  // Accesses the memory location (rates.CHF) of the script cache.
  var rate = cache.get('rates.CHF');

  // If a cache miss occurs, the program fetches the current
  // CHF rate from an API and stores the rate in the cache
  // for later convenience.
  if (!rate) {
    var response =
UrlFetchApp.fetch('https://api.exchangeratesapi.io/latest?base=USD');
    var result = JSON.parse(response.getContentText());
    rate = result.rates.CHF;
    cache.put('rates.CHF', rate);
  }
  // Converts dollars to CHF according to the latest rate.
  var swissFrancs = dollars * rate;
  // Returns the CHF value.
  return 'CHF' + swissFrancs;
}

這段程式碼會使用第三方匯率 API,從金融資訊伺服器擷取目前的匯率。這項操作是透過 UrlFetchAppCacheService 等 Apps Script 服務完成。這些進階概念不在本程式碼研究室的範圍內,但您已可看出 Apps Script 的多功能性,能自動執行 Google 試算表中的複雜工作。

自訂函式規範

恭喜您完成自訂函式的練習。在專案中使用自訂函式時,請務必瞭解自訂函式有特定限制。以下清單摘要說明「Google 試算表的自訂函式」指南中詳述的限制:

  • 請勿建立需要使用者授權的自訂函式。而是要建構自訂函式,執行較簡單的工作,例如計算範例資料、編輯文字等。請參閱「使用 Apps Script 服務」。
  • 自訂函式名稱不得與其他內建函式相同,也不得在名稱結尾加上底線。請參閱命名規範
  • 請勿將變數引數傳遞至自訂函式。您只能將確定性 (固定) 值做為引數傳遞至自訂函式。傳遞變數引數 (例如 =RAND() 的結果) 會導致自訂函式中斷。請參閱「引數規範」。
  • 請勿建立耗時超過 30 秒的函式。如果時間過長,就會發生錯誤,因此請保持函式程式碼簡單,並限制範圍。建議您盡可能簡化自訂函式中的計算作業。查看傳回值規範

現在您可以使用指令碼編輯器處理巨集及建立自訂函式,進一步提升試算表效能。下一節將回顧所學內容,並說明如何進一步提升指令碼編寫技能。

6. 結語

您已完成「Google 試算表適用的 Apps Script 基礎知識」的第一個程式碼研究室。您已建立及編輯試算表巨集和自訂函式,瞭解 Apps Script 的基本概念。您可以在下一個程式碼研究室中,進一步擴展 Apps Script 知識。

您覺得這個程式碼研究室實用嗎?

涵蓋內容

  • Apps Script 基本概念。
  • 如何瀏覽指令碼編輯器。
  • 如何建立及更新 Google 試算表巨集。
  • 如何為 Google 試算表建立自訂函式。

後續步驟

這個播放清單的下一個程式碼研究室,將介紹 Apps Script 試算表服務的核心類別和術語。這項服務可讓您使用 Apps Script,精細控制 Google 試算表中的資料值和呈現方式。

如要瞭解下一個程式碼研究室,請前往「試算表、工作表和範圍」。