Я импортирую почасовые данные с 10 разных датчиков. Короче говоря, я хочу видеть, когда почасовые данные превышают среднее использование за этот день недели и время дня.
Я создал листы с именами каждого из датчиков (например, «32022»), и каждый из этих листов представляет собой матрицу из 26 столбцов даты, все часы с 00:00 до 23:00 и Функция WEEKDAY () для извлечения дня недели из даты.
На отдельном листе («Ежедневное использование») я вручную создал 10 различных матриц среднесуточного использования по часам для каждого датчика, причем в столбце A указан день недели (по названию), а в следующих 24 столбцах все часы дня Каждая из этих матриц была преобразована в именованный диапазон, называемый "mediumusage_32022".
Я пытаюсь перебрать все данные и определить, какие данные выше среднего для этого конкретного дня / времени, и изменить фон этой ячейки на красный, если он превышает среднее.
Из того, что я понял, я не могу сослаться на именованный диапазон в условном форматировании, поэтому я пытаюсь решить эту проблему программно.
var currentsheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("32033");
var usagerange = SpreadsheetApp.getActiveSpreadsheet().getRangeByName('averageusage_32033');
//how many rows there are in the sheet
var firstcolumn = currentsheet.getRange("A1:A").getValues();
var bottomrow = firstcolumn.filter(String).length;
//loop through every day, check day of week, iterate through each hour, compare cell to "averageusage" range
for (var i = 2; i < bottomrow; i++){
var day = currentsheet.getRange(i,26).getValue;
for (var j = 2; j < 26; j++){
if (currentsheet.getRange(i,j).getValue() > usagerange.getRange(day,j).getValue()){
currentsheet.getRange(i,j).setBackground("red");
}
}
}
Я получаю сообщение об ошибке Cannot find function getRange in object Range.
Я предполагаю, что это потому, что я не могу ссылаться на именованный диапазон, как на обычном листе.