如果任何单元格的背景色不是白色,则使用谷歌脚本返回true



我有一个脚本,可以发送一封附有PDF的电子邮件。工作表具有条件格式,可以将背景颜色更改为白色以外的颜色。如果条件格式更改了任何单元格的背景色,我想添加到电子邮件的正文中。我该如何编写脚本来检查是否有任何单元格的背景色不是白色?

获取活动工作表上的所有非白色单元格,并在具有颜色、行和列的对话框中显示它们

function getNonWhiteCells() {
const ss=SpreadsheetApp.getActive();
const sh=ss.getActiveSheet();
const bA=sh.getRange(1,1,sh.getMaxRows(),sh.getMaxColumns()).getBackgrounds();
let f=[];
bA.forEach((r,i)=>{
r.forEach((c,j)=>{if(c!='#ffffff')f.push({color:c,row:i+1,col:j+1});});
});
//let html=''
//f.forEach(c=>{html+=Utilities.formatString('<br />color:%s row: %s col: %s',c.color,c.row,c.col)});
//SpreadsheetApp.getUi().showModelessDialog(HtmlService.createHtmlOutput(html), 'Non White Cells')
return (f.length>0);//boolean
}

相关内容

最新更新