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请发布一个新问题。