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

Google Sheets中按特定字体颜色求和单元格数值的方法

Google Sheets 按特定字体颜色求和的实现方法

Google Sheets没有内置函数直接支持按字体颜色求和,以下是两种实用的解决方法:

方法一:自定义Apps Script函数(推荐)

这是最直接的方案,通过编写简单的脚本实现按颜色求和:

  1. 打开目标表格,点击顶部菜单 扩展程序 > Apps 脚本,进入脚本编辑器。
  2. 删除默认代码,粘贴以下自定义函数代码:
function SUMBYFONTCOLOR(range, colorRef) {
  let sum = 0;
  const targetColor = colorRef.getFontColor();
  const values = range.getValues();
  const colors = range.getFontColors();

  for (let i = 0; i < values.length; i++) {
    for (let j = 0; j < values[i].length; j++) {
      if (colors[i][j] === targetColor && !isNaN(values[i][j])) {
        sum += values[i][j];
      }
    }
  }
  return sum;
}
  1. 点击编辑器顶部的保存按钮,给脚本命名(如"ColorSum"),按提示完成权限授权(首次运行需要允许脚本访问表格数据)。
  2. 返回表格,在结果单元格中输入公式:=SUMBYFONTCOLOR(求和区域, 颜色参照单元格)
    • 示例:若要计算A1:C10区域内,与D1单元格字体颜色一致的数值总和,输入 =SUMBYFONTCOLOR(A1:C10, D1)

方法二:辅助列+自定义判断函数(适合偏好非脚本场景)

如果不想直接用求和脚本,可以通过辅助列标记符合颜色条件的单元格,再求和:

  1. 按方法一的步骤打开脚本编辑器,添加以下判断颜色的函数:
function ISFONTCOLOR(cell, colorRef) {
  return cell.getFontColor() === colorRef.getFontColor() ? 1 : 0;
}
  1. 在表格中插入辅助列(如D列),在D1单元格输入 =ISFONTCOLOR(A1, $E$1)(E1为颜色参照单元格),下拉填充至对应行。
  2. 使用求和公式计算结果:=SUMIF(D:D, 1, A:A)(A:A为需要求和的数值列)

注意事项

  • 自定义函数不会自动刷新,当单元格字体颜色变化后,需双击结果单元格按回车,或按 Ctrl+R(Windows)/ Cmd+R(Mac)手动刷新。
  • 确保求和区域内的数值为数字格式,文本格式的数字不会被计入求和结果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.25 21:45:36