应用脚本,有条件格式化的单元格上的BG Color功能

时间:2015-06-09 15:54:04

标签: google-apps-script google-sheets google-apps

我尝试在工作表中使用一个函数来计算与参数colorref对应的单元格数。我遇到的问题是我需要在具有条件颜色背景集的范围上运行此函数。将每个细胞归还为白色。

任何帮助都非常有帮助!感谢。

例如:

  

countonBG(" E:E"," V2")

     

V2 ='#FFFF' //白色

     

有条件:如果E:E = U:U则E:E背景颜色='黄色'

     

返回剩余的白色细胞

function countonBG(range,colorref) {
    var sheet = SpreadsheetApp.getActiveSheet();
    var color = sheet.getRange(colorref).getBackground();
    var range = sheet.getRange(range);
    var rangeVal = range.getValues();
    var count = 0;
    var allColors = range.getBackgrounds();
    for (var i = 0; i < rangeVal.length; i++) {
        for (var j = 0; j < allColors[0].length; j++) {
            if (allColors[i][j] == color) count += 1;
        };
    };
    return count
}

1 个答案:

答案 0 :(得分:0)

白色的颜色参考是#ffffff。

尝试了这段代码,它给了我所有背景颜色:

[15-06-09 10:43:58:043 PDT] [[#cccccc, #cccccc, #cccccc, #ffffff, #ffffff, #ffffff], [#f1c232, #f1c232, #cc0000, #cc0000, #cc0000, #ffffff], [#f1c232, #f1c232, #cc0000, #cc0000, #cc0000, #ffffff], [#f1c232, #f1c232, #cc0000, #cc0000, #cc0000, #ffffff], [#f1c232, #f1c232, #ffffff, #ffffff, #ffffff, #ffffff], [#f1c232, #f1c232, #ffd966, #ffd966, #ffd966, #ffffff], [#ffffff, #ffffff, #ffffff, #ffffff, #ffffff, #ffffff]]
[15-06-09 10:43:58:044 PDT] 3.0

并且记录器返回此结果:

{
  "GenInfo": {
    "First Name":"Varun",
    "Last Name":"Naharia",
    "Phone No":"123456789"
  },
  "LangInfo": ["Hindi","English","Urdu","French"],
  "EduInfo": 
    [
      {
        "Collage":"CIITM",
        "Year":"2009",
        "Degree":"BCA"
      },
      {
        "Collage":"Dept. Of Comp. Sci. & Infor. University Of Kota",
        "Year":"2013",
        "Degree":"MCA"
      }
    ]
}

还可以找到下面的电子表格:

enter image description here