Пользовательская функция sumif для всех листов в рабочей книге — скрипт Google Sheets

#google-apps-script

#google-приложения-скрипт #google-sheets

Вопрос:

Я пытаюсь создать функцию в Google scripts, которая применяет sumif ко всем листам, кроме первого (поскольку он работает как сводный лист). Другими словами, я хочу, чтобы одна и та же функция выполнялась на нескольких листах и на каждом листе выполняла функцию sumif. Это связано с тем, что столбец условий может располагаться в любом порядке, а количество листов постоянно растет. Вот код, который я пытаюсь использовать для выполнения задачи.

Cond = имя для поиска (строка), Range = Диапазон, в котором находится имя (первый столбец) и значение, Col = В каком столбце содержится значение для суммирования (иначе говоря, если диапазон равен A: B, а имя равно A, тогда Col должно быть 2)

 function sumIfAllSheets(cond,range,col) {
  var sheet = []
  var values = []
  var sheets = SpreadsheetApp.getActiveSpreadsheet().getSheets();
  var sum = 0;

    for (var i = 1; i < sheets.length ; i   ) {
      sheet = sheets[i];
      values = sheet.getRange(range).getValues();

      for (var j in values) {
        if (typeof(values[j][0]) == 'number' amp;amp; values[j][0] == cond) {
          sum  = values[j][col-j];
        }   
      }
    }

  Logger.log(sum)
    return sum;
}
  

По какой-то причине он оценивается только в 0. Любая помощь приветствуется, заранее благодарю!