【发布时间】:2020-06-26 22:19:30
【问题描述】:
我有一张按 E 列排序的工作表。E 列中的值可以重复,这意味着 E 列中的几行可以具有相同的值。 现在我想为表示 E 列发生变化的行着色。 这是我根据 StackOverflow 上的一些出色答案构建的代码:
function quicktest() {
var spreadsheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Sheet1');
var rangeData = spreadsheet.getDataRange().getValues();
var lastRow = spreadsheet.getLastRow();
// var searchRange = spreadsheet.getRange(1, 1, lastRow-1, 5);
// var rangeValues = searchRange.getValues();
var previousclient = rangeData[2][5];
console.log(previousclient);
for ( j = 1 ; j < lastRow - 1; j++){
var currentclient = rangeData[j][5];
console.log(previousclient," ",currentclient);
if (previousclient != currentclient) {
spreadsheet.getRange(j,1,1,5).setBackground("#cc4125");
previousclient = currentclient;
};
}
代码运行,但结果是它“绘制”了错误的单元格,而且它也没有绘制整行(A 到 H 列),它只绘制了 A 到 C。 我还在这里阅读了一些建议将值发送到 rangeValues 的答案,但这对我不起作用。这就是为什么它在代码中被列为注释。也许我确实需要使用它。 这是运行此代码后我希望演示表的样子:
谢谢
【问题讨论】:
标签: google-apps-script google-sheets