javascript - 不推荐使用 rowRange.setBackgroundColor
问题描述
对于一个项目,我使用一个函数来设置工作表的背景颜色。
此功能有效,但 Google 通知“setBackgroundColor”已弃用。
function bg() {
var ss = SpreadsheetApp.getActive();
var range = SpreadsheetApp.getActiveSheet().getDataRange();
for (var i = range.getRow(); i < range.getLastRow(); i++) {
rowRange = range.offset(i, 0, 1);
status = rowRange.offset(0, 0).getValue();
if (status !=0) {
rowRange.setBackgroundColor("#000000");
}
}
我正在尝试使用“setBackgrounds(colors)”,但它不起作用。
function new_bg() {
var ss = SpreadsheetApp.getActive();
var sheet = ss.getSheets()[0];
var range = sheet.getDataRange();
var value = range.getValues();
for(var i = 2; i <= value; i++){
var colors = ["#000000"];
range.setBackgrounds(colors);
}
}
解决方案
- 值是二维数组,为什么要在它上面运行循环?
- 颜色应该是一个二维数组。因为它将在二维范围内设置颜色。
你应该尝试这样的事情:
function new_bg() {
var ss = SpreadsheetApp.getActive();
var sheet = ss.getSheets()[0];
var range = sheet.getDataRange();
var value = range.getValues();
var colors = [], temp = [];
for (var i = 2; i <= value.length; i++) {
temp = [];
for (var j = 0; j < value[i-1].length; j++) {
temp.push("#000000");
}
colors.push(temp);
}
range.setBackgrounds(colors);
}
推荐阅读
- batch-file - 获取一个批处理文件,告诉我 csv 文件中有多少行
- angular - Angular 6 - 使用量角器测试文件下载时,如何设置文件目标的相对路径
- api - 使用 Microsoft Graph REST API 访问 Word(.docx) 文件的内容?
- r - 如何将带有字符串和空格的数据拆分为列?
- html - css 边距/边框/填充对 LI 项目没有任何影响
- swift - XCode 线程 1:信号 SIGABRT 错误以 NSException (lldb) 类型的未捕获异常终止
- syntax - 为什么代码块总是有语法错误?
- json - 如何表明对象的每个键都具有相同的类型?
- ios - 如果我在我的 iOS 应用程序中使用一小部分歌曲作为闹钟播放,是否会被视为版权?我的应用会因侵犯版权而被下架吗?
- go-cd - GO CD - 在失败时获取材料