用于对多个 Google 表格中的单个单元格求和的 JS 公式故障排除 编辑:参考:

问题描述

我正在尝试对多个 Google 表格中的单个单元格求和。我已经使用这个脚本几个星期了,它最近停止工作了。表格要么无法识别公式的名称,要么在识别时在加载过程中超时:

function sumCells(cell) {
var val = [];
SpreadsheetApp.getActive().getSheets().forEach(function (s) {
          val.push(Number(s.getRange(cell).getValue()))
    });
return val.reduce(function (accumulator,value) {
    return accumulator + value;
    });
}

我知道单个单元格没有问题,因为我尝试从每张工作表中提取数字并将它们汇总到同一张工作表中,并且没有错误

有没有人有关于如何修复代码的建议,或者除了这个脚本之外的其他解决方案?我们使用的工作表数量在不断变化,因此不能使用 SUM(Sheet1!B5+Sheet2!B5...SheetN!B5)

解决方法

你能检查一下你的脚本的执行日志,以便我们看看确切的错误是什么吗?

logs

编辑:

  • 您的问题似乎源于执行时间的限制。每个脚本的执行时间不应超过 6 分钟,否则会缩短并失败。
  • Apps 脚本在处​​理大数据时应该没有问题,但降低脚本速度的是 API 调用。
  • 我从这个 add-on 中找到了一个公式,如果这是一个选项,它可能会解决您的问题:
    • UTIL_UTIL_VALUESHEETS(A1notation)
    • Usage

参考: