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

Google Sheets 跨工作表统计Client ID出现次数的公式咨询

谷歌表格跨工作表统计Client ID出现总次数解决方案

方案1:已知其他工作表名称(无需写脚本,运算速度快)

假设Clients工作表中Client ID列的首个数据单元格为A2,Orders列首个数据单元格为B2,可直接在B2输入以下公式:
=SUMPRODUCT(COUNTIF(INDIRECT({"表1","表2","表3"}&"!A:Z"), A2))

参数调整说明

  • 把{"表1","表2","表3"}替换为你实际除了Clients之外所有需要统计的工作表名称,名称用英文引号包裹,不同名称用英文逗号分隔
  • 如果你确定所有工作表的Client ID都固定在某一列,可把A:Z替换为对应列号(比如A:A),大幅提升公式运算效率
  • 把A2替换为你当前行对应Client ID的实际单元格位置
    公式输入后下拉填充即可批量统计所有Client ID的出现次数。

方案2:工作表数量多,自动排除Clients表统计所有其他表

如果工作表数量太多手动列名称效率太低,可以用自定义函数实现自动统计:

  1. 点击表格顶部菜单「扩展程序」-「Apps Script」,打开脚本编辑器
  2. 清空默认生成的代码,粘贴以下代码:
function COUNT_ALL_SHEETS(clientId) {
  const ss = SpreadsheetApp.getActiveSpreadsheet();
  const sheets = ss.getSheets();
  let total = 0;
  sheets.forEach(sheet => {
    // 跳过Clients工作表不统计
    if(sheet.getName() !== 'Clients') {
      const data = sheet.getDataRange().getValues();
      data.forEach(row => {
        total += row.filter(item => item === clientId).length;
      })
    }
  })
  return total;
}
  1. 点击保存项目,刷新谷歌表格页面
  2. 回到Clients表的Orders列,在单元格输入=COUNT_ALL_SHEETS(A2)下拉填充即可使用

注意事项

  • 自定义函数默认不会实时同步其他工作表的修改,修改数据后可以重新输入公式或者轻改单元格内容触发刷新
  • 统计前请确保Clients表的Client ID格式和其他表的Client ID格式一致,避免因格式不匹配导致漏统计

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 06:21:03