Здравствуйте. Нашел в интернете скрипт как подчитать количество залитых ячеек диапазона определенного цвета в google sheets. Создаю функцию countColoredCells(countRange, colorRef) в Apps Script, где countRange по сути диапазон, в котором идет подсчет ячеек цвета colorRef:
function countColoredCells(countRange,colorRef) {
var activeRange = SpreadsheetApp.getActiveRange();
var activeSheet = activeRange.getSheet();
var formula = activeRange.getFormula();
var rangeA1Notation = formula.match(/\((.*)\;/).pop().trim();
var range = activeSheet.getRange(rangeA1Notation);
var bg = range.getBackgrounds();
var values = range.getValues();
var colorCellA1Notation = formula.match(/\((.*)\;/).pop().trim();
var colorCell = activeSheet.getRange(colorCellA1Notation);
var color = colorCell.getBackground();
var count = 0;
for(var i=0;i<bg.length;i++)
for(var j=0;j<bg[0].length;j++)
if( bg[i][j] == color )
count=count+1;
return count;
};
Но почему-то неверно считает. Подсчет идет по цвету, который первый в диапазоне countRange, а colorRef вообще не используется. Как исправить скрипт?