您可以使用getBackground 代替getBackgrounds(没有最后的“s”)
每个函数有两种变体。
-
getBackground & getBackgrounds
-
setBackground & setBackgrounds
请查阅文档中的详细信息:https://developers.google.com/apps-script/reference/spreadsheet/range.html
简而言之,对于“singluar”版本,get 将返回一个字符串值,例如 #ffff00,而set 也将采用单个字符串。
对于plural 版本,get 将返回字符串值的二维数组,即:
[
[#ffff00, #ffffff, #ffffff],
[#ffffff, #ffffff, #ffffff],
[#ffffff, #ffffff, #ffffff],
[#ffffff, #ffffff, #ffffff],
[#ffffff, #ffffff, #00ff00],
[#ffffff, #ffffff, #ffffff]
]
这个例子代表三列六行的范围。对于set 方法的复数版本,setBackgrounds 您调用它的范围需要完全匹配二维数组的大小。因此,对于上面的示例,A1:C6 将是一个有效范围。这为您提供了更多控制权,以防您想用各种颜色为整个范围着色,但只需使用一个命令即可。
而使用单一版本setBackground,您可以选择一个大范围,然后将其传递给一个字符串值,它会将整个范围设置为该颜色。
您的示例可能如下所示:
var backColor1 = sheet.getRange("Config!C30");
var cbgColors = backColor1.getBackground();
var bRange2 = sheet.getRange("A1:Z10")
bRange2.setBackground(cbgColors);
参考