程式設計層級:新手
時間長度:5 分鐘
專案類型:自訂函式
目標
- 瞭解解決方案的功能。
- 瞭解 Apps Script 服務在解決方案中的功能。
- 設定指令碼。
- 執行指令碼。
認識這項解決方案
如果試算表的多張工作表中有類似的結構化資料 (例如團隊成員的客戶支援指標),您可以利用這個自訂函式,為每張工作表建立摘要。本解決方案著重於客戶服務票證,但您可以視需求自訂。
運作方式
自訂函式名為 getSheetsData()
,會根據工作表的「狀態」欄,匯總試算表中每張工作表的資料。指令碼會忽略不應納入匯總的工作表,例如 ReadMe 和 Summary 工作表。
Apps Script 服務
這項解決方案使用以下服務:
- 試算表服務 - 取得需要匯總並計算符合指定字串的項目數量的工作表。然後,指令碼會將計算結果新增至相對於試算表呼叫自訂函式的位置範圍。
必要條件
如要使用這個範例,您必須具備以下先決條件:
- Google 帳戶 (Google Workspace 帳戶可能需要管理員核准)。
- 可連上網際網路的網路瀏覽器。
設定指令碼
點選下方按鈕即可建立「匯總試算表資料自訂函式」試算表的副本。這項解決方案的 Apps Script 專案已附加至試算表。
建立副本
執行指令碼
- 在複製的試算表中,前往「摘要」工作表。
- 按一下儲存格
A4
。getSheetsData()
函式位於這個儲存格中。 - 前往任一擁有者的工作表,在工作表中更新或新增資料。您可以嘗試加入以下動作:
- 請新增一列,當中包含支援單資訊範例。
- 在「狀態」欄中變更現有支援單的狀態。
- 變更「狀態」欄的位置。例如,在「Owner1」Owner1工作表中,將「Status」Owner1欄從 C 欄移至 D 欄。
- 前往「Summary」工作表,查看
getSheetsData()
透過儲存格A4
建立的更新後的摘要表格。您可能需要勾選第 10 列中的核取方塊,才能重新整理自訂函式的快取結果。Google 會快取自訂函式,將效能最佳化。- 如果您新增或更新資料列,指令碼會更新票券和狀態計數。
- 如果您移動「Status」欄的位置,指令碼仍如預期般運作新資料欄索引。
檢查程式碼
如要查看這個解決方案的 Apps Script 程式碼,請點選下方的「查看原始碼」:
查看原始碼
Code.gs
修改
您可以視需要編輯自訂函式,數量不限。以下是手動重新整理自訂函式結果的選用加入項目。
重新整理快取的結果
有別於內建函式,Google 會快取自訂函式以獲得最佳效能。也就是說,如果您在自訂函式中進行變更 (例如計算的值),系統可能不會立即強制更新。如要手動重新整理函式結果,請按照下列步驟操作:
- 依序按一下「插入」>「核取方塊」,在空白儲存格中加入核取方塊。
- 新增含有核取方塊的儲存格做為自訂函式的參數,例如
getSheetsData(B11)
。 - 勾選或取消勾選核取方塊,即可重新整理自訂函式結果。
貢獻者
這個範例由 Google 開發人員專家協助維護。