我希望这段代码循环遍历工作表中的所有列。我是一名老师,想使用此代码对电子表格进行评分,但现在该代码仅适用于G列。我们将不胜感激。
function conditional() {
var sheet = SpreadsheetApp.getActiveSheet();
var numRows = sheet.getLastRow()+1;
var numC = sheet.getLastColumn();
for (var t = 7; t = numC; t++){
var range = sheet.getRange(2,t,numRows,1);
var answer = sheet.getRange(2,t).getValue();
var rule = SpreadsheetApp.newConditionalFormatRule()
.whenTextEqualTo(answer)
.setBackground("#00ff00")
.setFontColor("#00ff00")
.setRanges([range])
.build();
var rules = sheet.getConditionalFormatRules();
rules.push(rule);
sheet.setConditionalFormatRules(rules);
var rule2 = SpreadsheetApp.newConditionalFormatRule()
.whenTextDoesNotContain(answer)
.setBackground("#ff0000")
.setFontColor("#ff0000")
.setRanges([range])
.build();
var rules2 = sheet.getConditionalFormatRules();
rules2.push(rule2);
sheet.setConditionalFormatRules(rules2);
}
}
答案 0 :(得分:1)
问题出在您的for循环上,您必须如下更改for循环。
for (var t = 1; t <= numC; t++)
在这里,我修改了for循环语法以从A列迭代到最后一列。