You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

基于值与颜色统计的Google Script实现求助

Google Sheets 按名称统计带颜色标记的操作数量

适用场景:数据包含两列(A列:重复的名称;B列:带颜色标记的操作单元格),需生成汇总表统计每个名称对应不同颜色操作的数量。

实现步骤

1. 添加自定义函数读取单元格颜色

Google Sheets原生函数无法直接读取单元格颜色,需通过Apps Script添加自定义函数:

  • 打开目标表格,点击顶部菜单「扩展程序」→「Apps 脚本」
  • 删除编辑器内默认代码,粘贴以下代码:
function GETCELLCOLORCODE(input) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var range = ss.getRange(input);
  var hex = range.getBackground();
  return hex;
}
  • 保存脚本(可自定义命名,如「ColorGetter」),关闭脚本编辑器

2. 生成颜色代码辅助列

在数据区域右侧插入新列(如C列),在C2单元格输入公式:
=GETCELLCOLORCODE(CELL("address",B2))
下拉填充至所有数据行,C列将自动显示B列对应单元格的十六进制颜色代码(如#ffffff)

3. 构建汇总表

提取唯一值

  • 唯一名称:在汇总区域的首列(如A10单元格)输入=UNIQUE(A2:A),下拉得到所有不重复的名称
  • 唯一颜色代码:在汇总区域的首行(如B9单元格)输入=UNIQUE(C2:C),右拉得到所有不重复的颜色代码

统计交叉数量

在B10单元格输入以下公式,按Ctrl+Shift+Enter执行数组运算,再右拉、下拉填充至所有汇总单元格:
=COUNTIFS($A$2:$A,$A10,$C$2:$C,B$9)
此时汇总表将显示每个名称对应各颜色操作的统计数量

4. 可选:优化颜色显示(直观化)

若想把颜色代码替换为实际颜色块:

  • 选中颜色代码所在的首行(如B9及右侧单元格)
  • 点击顶部菜单「格式」→「条件格式」
  • 选择「自定义公式」,输入=B9=C2,设置「背景颜色」为=B9
  • 保存设置后,该行单元格将显示对应颜色,汇总表更直观

内容的提问来源于stack exchange,提问作者RF919

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 11:01:29