“范围的坐标在薄片的尺寸之外".排序时出错 [英] "The coordinates of the range are outside the dimensions of the sheet" error when sorting
问题描述
我正在尝试创建一个脚本来对当前活动工作表/选项卡上的表格进行排序,但是出现了我无法识别的错误.我不断得到范围的坐标超出图纸的尺寸.
.我的表中有从columnA到columnQ的数据.columnA中的数据是标识号,而columnB至columnQ中的数据包含公式.我的脚本在做什么错了?
I am trying to create a script to sort a table on the current active sheet/tab but I am getting an error that I could not identify. I keep getting The coordinates of the range are outside the dimensions of the sheet.
. My table has data in them from columnA to columnQ. Data in columnA are identification numbers and columnB to columnQ contain formulas. What am I doing wrong with my script?
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());
解决方案很有可能是通过
It's very likely that the solution is to change it by
var range = sheet.getRange(2, 1, sheet.getLastRow() - 1, sheet.getLastColumn());
上述内容是因为该范围从第2行开始,并且很可能该工作表的最后一行包含内容.
The above because the range start on row 2 and because it's very likely that sheet has content on its last row.
这篇关于“范围的坐标在薄片的尺寸之外".排序时出错的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!