我正在Google表格上使用此Google App脚本进行操作,该功能是由时间驱动的触发器运行的。我希望能够定位工作表上的特定单元格(如果单元格值=“打开”),以便可以更改单元格的背景色。我想知道如何进行这项工作?我可以定位单元格,但是我不知道如何更改单元格背景的属性,因为无法调用.setBackground()。
function myColorFunction() {
var s = SpreadsheetApp.getActiveSheet();
var ss = SpreadsheetApp.getActiveSpreadsheet();
var range = ss.getSheetByName("Form Responses 1").getRange(2,6,ss.getLastRow());
var cellRange = range.getValues();
Logger.log(cellRange);
Logger.log(cellRange.length);
Logger.log(cellRange.valueOf());
for(i = 1; i<cellRange.length; i++){
if(cellRange[i] == "Open")
{
Logger.log("change color here");
} else {
Logger.log("don't change color");
}
}
}
最佳答案
您可以将setBackground
属性与getRange
一起使用。尝试以下代码段。
function myColorFunction() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var range = ss.getSheetByName("Form Responses 1").getRange(2,6,ss.getLastRow());
var cellRange = range.getValues();
for(i = 0; i<cellRange.length-1; i++){
if(cellRange[i][0] == "Open")
{
ss.getSheetByName("Form Responses 1").getRange(i+2,6).setBackground("red");
ss.getSheetByName("Form Responses 1").getRange(i+2,6).setFontColor('white');
}
}
}
关于google-apps-script - Google Apps脚本更改Google工作表中特定单元格的背景颜色,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45888328/