1

我一直在到处寻找一种方法来根据谷歌电子表格中下面单元格的值来改变单元格的颜色。

如果下面的直接单元格的值是 > 或 < 或 = 为 0 ,则范围内的每个单元格都A1:F1需要更改颜色。

所以A1会一直看A2B1会一直看B2等等。在我的表格中,我可能需要一个随机单元格范围,其值低于它,更改颜色。我也想使用命名范围,因为这永远不会改变。

我很想提供一个代码示例,但问题是我什至不知道在函数onEdit()和设置我认为的变量应该是什么之后从哪里开始。

function onEdit(){
  var e = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = e.getActiveSheet().getName('Basic');
  var items = e.getRangeByName('avgt1v1name').getValues();
  var values = e.getRangeByName('avg1t1b').getValues();

我不知道我应该使用 IF 语句还是使用 FOR 或 WHILE 进行循环。

对你的帮助表示感谢。

提前致谢。墨修斯

4

1 回答 1

0

我猜...

function onEdit() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var s = ss.getSheetByName('Basic');
  var values = ss.getRangeByName('avg1t1b').getValues();

  var nameRange = ss.getRangeByName('avgt1v1name');
  var rowIndex = nameRange.getRowIndex();

  for (var i = 0; i <= values[0].length -1; i++) {
    var col = i + 1;
    var cell = values[0][i];
    if (cell != '' && (cell <= 0 || cell > 0) ) {
      nameRange.getCell(rowIndex, col ).setBackgroundColor('red');
      }
    else {nameRange.getCell(rowIndex, col ).setBackgroundColor('white');}
  }
};

当数字零出于某种原因在电子表格中时不起作用。电子表格

于 2012-08-16T08:34:47.950 回答