对合并的单元格进行计数时,无法按背景色对行进行计数-Google表格

时间:2019-05-02 13:18:41

标签: javascript google-sheets google-sheets-api google-sheets-formula

嘿,我在google表格中表现出色,我想根据背景颜色计算合并单元格的行数。

我使用ScriptEditor来解决它。我有下一个代码:

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;
};

有效,

但是如果我合并一些单元格,那是行不通的。

the example

我想要的是按背景色计算合并单元格每个块的行数。

0 个答案:

没有答案