Optimization 设置多个“;“设置值”;马上

Optimization 设置多个“;“设置值”;马上,optimization,google-apps-script,setvalue,Optimization,Google Apps Script,Setvalue,我有一些单元格(不相邻)。其中每一个都有一个“rLampnn”形式的范围名称,如下所示 ss.getRangeByName("rLamp20").setValue(e.range.getValue()); ss.getRangeByName("rLamp19").setValue(e.range.getValue()); ss.getRangeByName("rLamp18").setValue(e.range.getValue()); 我想同时将相同的值放入其中几个。(每个单元格

我有一些单元格(不相邻)。其中每一个都有一个“rLampnn”形式的范围名称,如下所示

  ss.getRangeByName("rLamp20").setValue(e.range.getValue());
  ss.getRangeByName("rLamp19").setValue(e.range.getValue());
  ss.getRangeByName("rLamp18").setValue(e.range.getValue());
我想同时将相同的值放入其中几个。(每个单元格都有一个条件格式,根据输入的内容改变单元格颜色)


是否有一种更有效(即更快)的方法将相同的值设置到一组单元格中,而不是像上面那样单独调用?

如果有许多单元格,则可以使用命名范围中的nn索引循环
.setValue()

var fName = 'rLamp';
var howManyNamedRanges = 20;
// Assuming the first NamedRange is rLamp0
for (var i=0;i<howManyNamedRanges;i++) {
  ss.getRangeByName(fName+i).setValue(e.range.getValue());    
}
var fName='rLamp';
var howManyNamedRanges=20;
//假设第一个NamedRange是rLamp0

对于(var i=0;iOh我喜欢这个,谢谢。它更整洁。奇怪的是,虽然它实际上没有更快。在我目前的工作表中,我有72个这样的“rlamp”单元,使用我原来的方法和k4k4sh1的方法所花费的时间完全相同。但是它更整洁…代码更少。它没有更快,因为没有对这些调用进行优化,他们说基本上是围绕API请求的包装器,API不支持非连续范围的设置值。实际上,它不是更快,只是更短。
var fName = 'rLamp';
var firstNamedRange = 4;
var lastNamedRange = 20;
// Assuming the first NamedRange is rLamp[n]
for (var i=firstNamedRange;i<=lastNamedRange;i++) {
  ss.getRangeByName(fName+i).setValue(e.range.getValue());    
}