如何在 Google 試算表中根據儲存格顏色計算或加總儲存格?
在日常的試算表工作中,您可能會遇到需要根據特定儲存格背景顏色來計算或加總儲存格值的情況,如下方螢幕截圖所示。例如,您可能只想統計或加總那些以特定顏色標記的儲存格,以便快速按類別或狀態分析數據。本指南將介紹如何不僅在缺乏內建支持此類基於顏色運算功能的 Google 試算表中完成這項操作,還包括提供多種方法(從內建功能到進階工具)的 Microsoft Excel。
了解如何處理基於顏色的數據分析可以使您的工作更有效率,特別是當顏色用於標記狀態、優先級或類別時。我們還將討論不同的解決方案,比較它們的使用場景,並提供實用的操作提示和錯誤提醒,以確保您的任務順利進行。
- 在 Google 試算表中通過腳本根據儲存格顏色計算儲存格值
- 在 Google 試算表中通過腳本根據儲存格顏色加總儲存格值
- 在 Microsoft Excel 中通過 Kutools for Excel 根據儲存格顏色計算或加總儲存格值
在 Google 試算表中通過腳本根據儲存格顏色計算儲存格值
Google 試算表並不直接提供根據背景顏色計算儲存格的功能。但是,您可以通過自訂 Apps Script 來實現這一目標。該腳本作為用戶定義函數,讓您可以像引用公式一樣使用它。以下是設置和使用該腳本的方法:
1. 點擊 工具 > 指令碼編輯器 進入指令碼環境。見下圖:
2. 在專案視窗中,選擇 文件 > 新增 > 指令碼檔案 開啟一個新的程式碼模組,如下所示:
3. 當提示時,輸入新指令碼代碼的名稱並確認。為指令碼命名有意義的名字,以便日後識別其用途。
4. 點擊 確定,然後複製並粘貼以下代碼,替換模組中的任何範例代碼。請務必準確無誤地粘貼提供的代碼。
function countColoredCells(countRange,colorRef) {
var activeRg = SpreadsheetApp.getActiveRange();
var activeSht = SpreadsheetApp.getActiveSheet();
var activeformula = activeRg.getFormula();
var countRangeAddress = activeformula.match(/\((.*)\,/).pop().trim();
var backGrounds = activeSht.getRange(countRangeAddress).getBackgrounds();
var colorRefAddress = activeformula.match(/\,(.*)\)/).pop().trim();
var BackGround = activeSht.getRange(colorRefAddress).getBackground();
var countCells = 0;
for (var i = 0; i < backGrounds.length; i++)
for (var k = 0; k < backGrounds[i].length; k++)
if ( backGrounds[i][k] == BackGround )
countCells = countCells + 1;
return countCells;
};
5. 儲存這個指令碼檔案,返回到您的試算表,並像使用任何 Google 試算表公式一樣使用新函數。在空白儲存格中輸入:=countcoloredcells(A1:E11,A1) 來計算 A1:E11 區域內與 A1 顏色匹配的儲存格數量。按下 Enter 鍵以獲取結果。如果系統提示授權,請允許指令碼在您的試算表中執行。
注意:A1:E11 是您的資料區域;A1 是要計算顏色的參照儲存格。確保參照儲存格具有完全相同的顏色,並避免合併儲存格以獲得最佳可靠性。
6. 若要計算其他顏色,根據需要重複公式,更改顏色參照儲存格。如果您的範圍發生變化,請相應調整公式中的範圍。
如果您收到錯誤或意外結果,請仔細檢查指令碼是否已保存,並且您使用了正確的顏色參照。基於 Apps Script 的函數僅在函數或其參數改變時重新計算——如果您之後重新著色儲存格,請重新輸入公式或再次按下 Enter 鍵刷新。
在 Google 試算表中通過腳本根據儲存格顏色加總儲存格值
在 Google 試算表中根據指定儲存格顏色加總儲存格值需要使用類似的方法,利用 Apps Script 實現。這對於財務試算表、狀態記錄或任何顏色代表帶有數字數據類別的情況尤其有用。
1. 在 Google 試算表中,通過 工具 > 指令碼編輯器 打開指令碼編輯器。在專案視窗中,選擇 文件 > 新增 > 指令碼檔案 添加新的程式碼模組。在提示框中,分配一個獨特的名稱以幫助追蹤其用途,例如 "SumColoredCells"。確認以創建模組。
2. 點擊 確定,在新的程式碼模組視窗中,將提供的加總有色儲存格的指令碼粘貼進來,替換所有預設代碼。請小心確保所有代碼都已複製,遺漏字符可能會導致語法錯誤。
function sumColoredCells(sumRange,colorRef) {
var activeRg = SpreadsheetApp.getActiveRange();
var activeSht = SpreadsheetApp.getActiveSheet();
var activeformula = activeRg.getFormula();
var countRangeAddress = activeformula.match(/\((.*)\,/).pop().trim();
var backGrounds = activeSht.getRange(countRangeAddress).getBackgrounds();
var sumValues = activeSht.getRange(countRangeAddress).getValues();
var colorRefAddress = activeformula.match(/\,(.*)\)/).pop().trim();
var BackGround = activeSht.getRange(colorRefAddress).getBackground();
var totalValue = 0;
for (var i = 0; i < backGrounds.length; i++)
for (var k = 0; k < backGrounds[i].length; k++)
if ( backGrounds[i][k] == BackGround )
if ((typeof sumValues[i][k]) == 'number')
totalValue = totalValue + (sumValues[i][k]);
return totalValue;
};
3. 儲存指令碼後,返回到您的試算表,在空白儲存格中輸入公式 =sumcoloredcells(A1:E11,A1),然後按下 Enter 鍵。此公式會對背景顏色與 A1 相符的 A1:E11 內的值求和。使用此函數時,請確保所有目標求和儲存格都是數字;非數字值將被忽略。
注意: A1:E11 表示您的資料範圍,而 A1 提供顏色參照。該公式只會對可見的數值求和——確保範圍內的合併儲存格或錯誤不會影響您的總數。
4. 您可以通過更改公式中的顏色參照儲存格,重複上述過程來加總不同顏色類別的值。如果您的數據更新或更改背景顏色,請記住刷新公式以獲得更新后的輸出。
如果加總結果為零或出現錯誤值,請驗證範圍內是否包含數字且顏色匹配是否準確。此外,如果只是儲存格顏色改變,重算不是自動的——編輯公式儲存格以強制更新。
在 Microsoft Excel 中通過 Kutools for Excel 根據儲存格顏色計算或加總儲存格值
在 Microsoft Excel 中工作時,按顏色計算或加總儲存格是一個常見的需求,特別是在項目管理、庫存或品質控制報告中。Kutools for Excel 提供了一個專門的按顏色計算工具,使您可以直接通過背景或字體顏色獲取計數和總數——這對於較大的數據範圍以及需要快速、可重複結果時尤為有用。
安裝 Kutools for Excel 後,按照以下步驟操作:
1. 高亮顯示您希望按顏色計算或加總的範圍,然後點擊 Kutools Plus > 按顏色計算。參照下方螢幕截圖以獲取指導:
2. 出現按顏色計算對話框。在顏色模式下設置標準格式化,並選擇背景作為統計類型。仔細檢查預覽和選項:
3. 點擊生成報告以創建一個新的工作表,其中包含範圍內每種顏色的計數和加總分類。此報告包括彩色儲存格的數量和總數,便於參考或進一步分析。
注意:此功能還可以根據條件格式或字體顏色計算值。對於動態分析,請使用條件格式規則;否則,該工具最適合用於靜態顏色填充。源儲存格顏色的任何更改都需要重新執行按顏色計算工具才能獲得更新的結果。如果遇到問題,請確認 Kutools 是否已啟用並保持最新版本。
最佳 Office 生產力工具
🤖 | Kutools AI 助手:以智能執行為基礎,革新數據分析 |生成程式碼 | 創建自訂公式 | 分析數據並生成圖表 | 調用 Kutools 增強函數… |
熱門功能:查找、選取項目的背景色或標記重複值 | 刪除空行 | 合併列或單元格且不遺失數據 | 四捨五入(免公式)... | |
高級 LOOKUP:多條件 VLookup|多值 VLookup|多表查找|模糊查找... | |
高級下拉列表:快速創建下拉列表 |依賴型下拉列表 | 多選下拉列表... | |
列管理器:添加指定數量的列 | 移動列 | 切換隱藏列的顯示狀態 | 比較區域及列... | |
精選功能:網格聚焦 | 設計檢視 | 增強編輯欄 | 工作簿及工作表管理器 | 資源庫(快捷文本) | 日期提取器 | 合併資料 | 加密/解密儲存格 | 按列表發送電子郵件 | 超級篩選 | 特殊篩選(篩選粗體/傾斜/刪除線...)... | |
15 大工具集:12 項文本工具(添加文本、刪除特定字符…)|50+ 儀表 類型(甘特圖等)|40+ 實用 公式(基於生日計算年齡等)|19 項插入工具(插入QR码、根據路徑插入圖片等)|12 項轉換工具(金額轉大寫、匯率轉換等)|7 項合併與分割工具(高級合併行、分割儲存格等)|...及更多 |
運用 Kutools for Excel,全面提升您的 Excel 技能,體驗前所未有的高效。 Kutools for Excel 提供超過300 項進階功能,讓您提升工作效率、節省時間。 點此尋找您最需要的功能...
Office Tab 為 Office 帶來分頁介面,讓您的工作更加輕鬆簡單
- 在 Word、Excel、PowerPoint 中啟用分頁編輯與閱讀。
- 在同一視窗的新分頁中打開與創建多份文件,而非開啟新視窗。
- 提升您的生產力50%,每日可幫您減少數百次鼠標點擊!
所有 Kutools 外掛,一次安裝
Kutools for Office 套裝整合了 Excel、Word、Outlook 和 PowerPoint 的外掛,外加 Office Tab Pro,非常適合需要跨 Office 應用程式協同作業的團隊。





- 全合一套裝 — Excel、Word、Outlook及 PowerPoint 外掛 + Office Tab Pro
- 一鍵安裝,一份授權 — 幾分鐘完成設置(支援 MSI)
- 協同運作更順暢 — Office 應用間無縫提升生產力
- 30 天全功能試用 — 無需註冊、無需信用卡
- 最超值 — 一次購買,節省單獨外掛費用