我创建了一个电子表格,该电子表格使用条件格式对单元格进行了阴影处理,然后我想对这些单元格进行计数并创建一个百分比。到目前为止,我已经能够使脚本工作,并且计算是正确的,但是脚本/工作表比我想要的要慢。
我在编程时很陌生,不知道如何查看代码是否经过优化。
这是我要计算单元格数量的脚本,该脚本是我在此站点上找到的:
function countColoredCells(countRange,colorRef) {
var activeRg = SpreadsheetApp.getActiveRange();
var activeSht = SpreadsheetApp.getActiveSheet();
var activeformula = activeRg.getFormula();
var countRangeAddress = activeformula.match(/\((.*)\,/).pop().trim();
var backGrounds = activeSht.getRange(countRangeAddress).getBackgrounds();
var colorRefAddress = activeformula.match(/\,(.*)\)/).pop().trim();
var BackGround = activeSht.getRange(colorRefAddress).getBackground();
var countCells = 0;
for (var i = 0; i < backGrounds.length; i++)
for (var k = 0; k < backGrounds[i].length; k++)
if ( backGrounds[i][k] == BackGround )
countCells = countCells + 1;
return countCells;
};
以及正在运行的工作表。
https://docs.google.com/spreadsheets/d/1uJJQeF42c0TCQe5_Awztp74YmpS3PaFuAg0DEfLHCGc/edit?usp=sharing
请帮助。