我们有这个脚本可以清除所有灰色单元。我们将其设置为每天运行。但是,使用此脚本只会清除"顶部气道"表。我一生都无法弄清楚如何在列表中添加额外的床单(不知道如何正确编写代码)或只是将代码应用于文件中的所有表。
function clearOrange() {
var sheet = SpreadsheetApp.getActive().getSheetByName('Top Airway');
var range = sheet.getDataRange();
var bgColors = range.getBackgrounds();
for (var i=0; i<bgColors.length; i++) {
for (var j=0; j<bgColors[i].length; j++) {
if (bgColors[i][j] === '#efefef') {
range.getCell(i+1,j+1).clearContent();
}
}
}
}
基本上,您需要'获取'电子表格对象的所有床单,然后通过返回的床单数组循环。
看看这是否有效
function clearGreyCells() {
var r, bg;
SpreadsheetApp.getActive().getSheets()
.forEach(function (s) {
r = s.getDataRange();
bg = r.getBackgrounds();
r.setValues(r.getValues()
.map(function (b, i) {
return b.map(function (c, j) {
return (bg[i][j] == '#efefef') ? null : c;
})
}))
})
}