Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google apps script &引用;范围的坐标在图纸尺寸之外;排序时出错_Google Apps Script_Google Sheets - Fatal编程技术网

Google apps script &引用;范围的坐标在图纸尺寸之外;排序时出错

Google apps script &引用;范围的坐标在图纸尺寸之外;排序时出错,google-apps-script,google-sheets,Google Apps Script,Google Sheets,我正在尝试创建一个脚本来对当前活动工作表/选项卡上的表进行排序,但遇到了一个无法识别的错误。我不断得到范围的坐标超出了图纸的尺寸。。我的表中有从columnA到columnQ的数据。A列中的数据是识别号,B列到Q列中包含公式。我的脚本有什么问题 var sortFirst = 7; //index of column to be sorted by; 1 = column A, 2 = column B, etc. var sortFirstAsc = true; //Set to fals

我正在尝试创建一个脚本来对当前活动工作表/选项卡上的表进行排序,但遇到了一个无法识别的错误。我不断得到
范围的坐标超出了图纸的尺寸。
。我的表中有从columnA到columnQ的数据。A列中的数据是识别号,B列到Q列中包含公式。我的脚本有什么问题

var sortFirst = 7; //index of column to be sorted by; 1 = column A, 2 = column B, etc.
  var sortFirstAsc = true; //Set to false to sort descending

  var sortSecond = 8;
  var sortSecondAsc = true;

  var sortThird = 9;
  var sortThirdAsc = true;

  var activeSheet = SpreadsheetApp.getActiveSheet();
  var sheetName = activeSheet.getSheetName(); //name of sheet to be sorted
  var sheet = SpreadsheetApp.getActive().getSheetByName(sheetName);
  var range = sheet.getRange(2, 1, sheet.getLastRow(), sheet.getLastColumn());
  range.sort([{column: sortFirst, ascending: sortFirstAsc}, {column: sortSecond, ascending: sortSecondAsc}, {column: sortThird, ascending: sortThirdAsc}]);

错误很可能发生在线路上

var range = sheet.getRange(2, 1, sheet.getLastRow(), sheet.getLastColumn());
解决办法很可能是通过

var range = sheet.getRange(2, 1, sheet.getLastRow() - 1, sheet.getLastColumn());

因为范围从第2行开始,并且很可能工作表的最后一行有内容。

如果您记录
sheet.getLastRow()
sheet.getLastColumn()
,您会得到什么?嗨,鲁本,谢谢您,B到Q的列确实有公式,它看起来像添加了一个<代码> -1 ,但是现在我的问题是,虽然它正在排序表,但是它包含了包含空白不可见值(仅包含公式)的行,所以结果是具有可见值的行结束在表的底部,而在顶部是空白的行。如何使排序使用具有可见值的最后一行?或者我如何使上面的代码行只从第2行排序到columnA的最后一行?@Jay请发布一个新问题。