0
var ss = SpreadsheetApp.openByUrl(url)
var sheet = ss.getSheetByName("data").getRange("p1:q2") 
var i = sheet.getValue()

上述命令写在“主电子表格”中的脚本中,以处理“目标电子表格 - 由 URL 定义”。

使用上述命令,我只能正确获取单元格“p1”中的值,而“p1:q2”中的其他单元格 p2、q1 和 q2 缺失。

后续命令恢复为“主电子表格”。

我的问题是如何确保“在 OPENBYURL 命令之后在目标电子表格上完成工作——众所周知,这些命令是“没有在我的计算机站点中物理打开”——正如教程所阐明的那样。

4

1 回答 1

0

您遇到的问题不在于openByUrl()您在某个范围内获取值的方式,而是在于您获取值的方式。

选择多于单个单元格时,您必须使用getValues()返回单元格值数组的。请参阅下面的测试代码

function test(){
  var ss = SpreadsheetApp.openByUrl(url);
  var sheet = ss.getSheetByName("data").getRange("p1:q2");
  var i = sheet.getValues();// getting a 2 D array
  for(var r=0;r<i.length;++r){
    for(var c=0;c<i[0].length;++c){
      Logger.log(i[r][c]);// get all values in the array p1, q1, p2, q2 in turn
    }
  }
}
于 2013-11-11T11:49:55.040 回答