Google apps script 范围的坐标或尺寸无效。-使用按钮移动行

Google apps script 范围的坐标或尺寸无效。-使用按钮移动行,google-apps-script,google-sheets,Google Apps Script,Google Sheets,这是我在这里的第一个问题,所以对于发帖中的任何错误,我深表歉意。我发现了许多相关的问题,但没有解决我的问题。我在电子表格中有下面的代码,它应该移动选定的行。用户输入要归档的第一行和要归档的最后一行到归档表中。我得到这个错误: 范围的坐标或尺寸无效 与该行相关: s.getRange(rowStart, 1, numR, 9).moveTo(target); 任何帮助都将不胜感激 代码如下: function onButton() { // assumes source data in she

这是我在这里的第一个问题,所以对于发帖中的任何错误,我深表歉意。我发现了许多相关的问题,但没有解决我的问题。我在电子表格中有下面的代码,它应该移动选定的行。用户输入要归档的第一行和要归档的最后一行到归档表中。我得到这个错误:

范围的坐标或尺寸无效

与该行相关:

s.getRange(rowStart, 1, numR, 9).moveTo(target);
任何帮助都将不胜感激

代码如下:

function onButton() {

// assumes source data in sheet named Orders

// target sheet of move to named Archived

var ss = SpreadsheetApp.getActiveSpreadsheet();

var s = ss.getSheetByName("Orders");

var cellStart = s.getRange(11,2);

var cellEnd = s.getRange(12,2);

var rowStart = cellStart.getValue();

var numR = cellEnd.getValue() - cellStart.getValue() + 1;

var targetSheet = ss.getSheetByName("Archived");

var target = targetSheet.getRange(targetSheet.getLastRow() + 1, numR);

s.getRange(rowStart, 1, numR, 9).moveTo(target);

s.deleteRows(rowStart, numRows);

}

对于稍后阅读本文的人,评论员给了我修复它所需的线索,以下是目前正在运行的代码:

function onButton() {

// assumes source data in sheet named Orders

// target sheet of move to named Archived

var ss = SpreadsheetApp.getActiveSpreadsheet();

var s = ss.getSheetByName("Orders");

var cellStart = s.getRange(2, 11);

var cellEnd = s.getRange(2, 12);

var rowStart = cellStart.getValue();

var numR = cellEnd.getValue() - cellStart.getValue() + 1;

var targetSheet = ss.getSheetByName("Archived");

var target = targetSheet.getRange(targetSheet.getLastRow() + 1, 1);

s.getRange(rowStart, 1, numR, 9).moveTo(target);

s.deleteRows(rowStart, numR);

}

谢谢大家

这个问题没有足够的细节。请添加B11和B12的值。虽然在您的脚本中,似乎没有声明numRows,您也可以确认它吗?谢谢您的检查@如果单元格中的值实际上是K2和L2,我是否颠倒了它们?对于试验,K2的值为2,L2的值为3。至于numRows,我在发布后注意到了这个错误,并将它改为numR.getRangerow,col,getRange11,2是B11。第一个值是行和第二列。你也可以用getRangeK2来代替。鲁本和@James,我自己刚刚检查过,发现我已经颠倒了它们。非常感谢。我遇到了一个新问题。在存档的工作表上,行偏移了一列,即A-i移动到B-J。我意识到我再次误用了getRange。现在一切都好了。非常感谢大家!