Как сделать SUMIF (из Google Sheets), используя Google Apps Script? - PullRequest
0 голосов
/ 21 декабря 2018

В Google Sheets есть функция SUMIF (), которую я использую внутри оператора IF:

=IF(SUMIF(January!$F$6:$F,$B2,January!$G$6:$G)=0,"",SUMIF(January!$F$6:$F,$B2,January!$G$6:$G))

Если IF просто показать пустую ячейку, если значение = 0

Январь! $ F $ 6: $ F - это столбец с именами

$ B2 - это ячейка с именем для сравнения с January!$F$6:$F

Январь! $ G $ 6: $ G - столбец с числовыми значениями

Я использую эту функцию во многих местах, и каждый раз, когда мне приходится обновлять значение, довольно больно.

Итак, я бы хотел создать свою собственную функцию с помощью редактора сценариев , проанализировав три значения, упомянутых выше:

=myOwnFunction(columnNames,columnValues,names)

Отредактировано

Есть еще один пост , задающий аналогичный вопрос, но он работает над макросом, поэтому, когда я попытался применить те же правила, такие как setValue Iполучить ошибку ограничения.

Могу ли я получить помощь, пожалуйста?

Заранее спасибо!

1 Ответ

0 голосов
/ 21 декабря 2018

Вопрос уже обсуждался ранее .

Теперь я могу предложить нечто подобное:

function myOwnFunction(columnNames, columnValues, names) {
  var res = 0;
  for (var i in columnNames) {
    if (columnNames[i][0] == names) res += columnValues[i][0];
  }
  if (res == 0) res = '';
  return res;
}

Обратите внимание, я использовал ваше собственное имя функции.Но традиционно имена пользовательских функций пишутся в верхнем регистре, например, MY_OWN_FUNCTION.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...