/** * @param {range} sumRange Range to be evaluated * @param {range} colorRef Cell with background color to be searched for in sumRange * @return {number} * @customfunction */ function sumColoredCells(sumRange,colorRef) { var activeRange = SpreadsheetApp.getActiveRange(); var activeSheet = activeRange.getSheet(); var formula = activeRange.getFormula().toString(); formula = formula.replace(new RegExp(';','g'),','); var rangeA1Notation = formula.match(/\((.*)\,/).pop().replace(/\s/g, ""); var range = activeSheet.getRange(rangeA1Notation); var bg = range.getBackgrounds(); var values = range.getValues(); var colorCellA1Notation = formula.match(/\,(.*)\)/).pop().replace(/\s/g, ""); var colorCell = activeSheet.getRange(colorCellA1Notation); var color = colorCell.getBackground(); var total = 0; for(var i=0;i