Apps Script error: Cannot find method getRange(number,number,number,number)
Apps Script error: Cannot find method getRange(number,number,number,number)
我看到有些人过去也遇到过类似的问题,但它们似乎完全不同,以至于解决方案也有所不同。所以这里是:
我正在尝试 return Google Apps 脚本中的一系列已知大小,如下所示:
var myRange = ss.getRange(2,1,14,4);
但是,我收到这样的错误:
Cannot find method getRange(number,number,number,number).
请注意,使用 a1notation,如下所示,效果很好:
var myRange = ss.getRange("A2:D15");
getRange
function有几个排列
- getRange(整数, 整数)
- return从整数坐标的范围
- getRange(整数, 整数, 整数)
- returns 从前 2 个参数的坐标到与最后一个参数一样多的行的范围
- getRange(整数, 整数, 整数, 整数)
- returns 从前两个参数的坐标到与第三个参数一样多的行和与最后一个参数一样多的列的范围
- getRange(字符串)
- returns 由 a1notation 中的字符串指定的范围(即 "A2:D15",这与表示从第 2 行第 1 列到第 15 行第 4 列的所有内容相同)
我试过使用所有不同的排列(使用硬编码数字),但只有 a1notation 一个有效。有什么想法吗?
正如我在评论中提到的,我很想知道您是如何在代码中构建 ss
var 的。
可能是您指向的是价差sheet,而不是价差sheet内的sheet。
我整理了一个简单的 getRange 示例。这行得通,并将范围内的列数和行数记录到记录器中。
如您所见,ss
变量用于传播sheet,sheet
变量用于传播sheet 中的sheet本身。
function getSomeRange(){
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getActiveSheet();
var myRange = sheet.getRange(2,1,14,4);
Logger.log("Number of rows in range is "+myRange.getNumRows()+ " Number of columns in range is "+ myRange.getNumColumns());
}
我看到有些人过去也遇到过类似的问题,但它们似乎完全不同,以至于解决方案也有所不同。所以这里是:
我正在尝试 return Google Apps 脚本中的一系列已知大小,如下所示:
var myRange = ss.getRange(2,1,14,4);
但是,我收到这样的错误:
Cannot find method getRange(number,number,number,number).
请注意,使用 a1notation,如下所示,效果很好:
var myRange = ss.getRange("A2:D15");
getRange
function有几个排列
- getRange(整数, 整数)
- return从整数坐标的范围
- getRange(整数, 整数, 整数)
- returns 从前 2 个参数的坐标到与最后一个参数一样多的行的范围
- getRange(整数, 整数, 整数, 整数)
- returns 从前两个参数的坐标到与第三个参数一样多的行和与最后一个参数一样多的列的范围
- getRange(字符串)
- returns 由 a1notation 中的字符串指定的范围(即 "A2:D15",这与表示从第 2 行第 1 列到第 15 行第 4 列的所有内容相同)
我试过使用所有不同的排列(使用硬编码数字),但只有 a1notation 一个有效。有什么想法吗?
正如我在评论中提到的,我很想知道您是如何在代码中构建 ss
var 的。
可能是您指向的是价差sheet,而不是价差sheet内的sheet。
我整理了一个简单的 getRange 示例。这行得通,并将范围内的列数和行数记录到记录器中。
如您所见,ss
变量用于传播sheet,sheet
变量用于传播sheet 中的sheet本身。
function getSomeRange(){
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getActiveSheet();
var myRange = sheet.getRange(2,1,14,4);
Logger.log("Number of rows in range is "+myRange.getNumRows()+ " Number of columns in range is "+ myRange.getNumColumns());
}