如何使用 Google Apps 脚本将选定数据范围复制到同一 Sheet 中的最后一行数据之后?
How to copy a range of selected data to after the lastRow of data in the same Sheet using Google Apps Script?
我手动选择了一系列数据,并想按下一个按钮将这些数据复制到同一 sheet 中的最后一行数据之后,使用 Google Apps 脚本但根本不起作用.如何解决?代码是:
var listToCopy = SpreadsheetApp.getActiveSheet().getActiveRange();
var height = listToCopy.getHeight();
var destRow = listToCopy.getLastRow()+1;
listToCopy.copyTo(spreadsheet.getRange(destRow, 0, height));
我相信你的目标如下。
- 您想使用 Google Apps 脚本将 selected 范围复制到同一 sheet 的最后一行。
为此,这个答案怎么样?
修改点:
- 在
var destRow = listToCopy.getLastRow()+1;
的情况下,检索 listToCopy
范围的最后一行。
- 在您的情况下,需要检索 sheet 的最后一行。
- 可以将源范围复制到目标范围作为起始范围,如
getRange(destRow, 1)
。
- 范围的第一个数字是
1
。
spreadsheet
未声明。
当以上几点反映到你的脚本中,就会变成下面这样。
修改后的脚本:
为了使用这个脚本,请 select 范围和 运行 myFunction
的函数。这样,selected 范围被复制到相同 sheet.
的最后一行
function myFunction() {
var sheet = SpreadsheetApp.getActiveSheet();
var listToCopy = sheet.getActiveRange();
var destRow = sheet.getLastRow() + 1;
listToCopy.copyTo(sheet.getRange(destRow, 1));
}
参考文献:
我手动选择了一系列数据,并想按下一个按钮将这些数据复制到同一 sheet 中的最后一行数据之后,使用 Google Apps 脚本但根本不起作用.如何解决?代码是:
var listToCopy = SpreadsheetApp.getActiveSheet().getActiveRange();
var height = listToCopy.getHeight();
var destRow = listToCopy.getLastRow()+1;
listToCopy.copyTo(spreadsheet.getRange(destRow, 0, height));
我相信你的目标如下。
- 您想使用 Google Apps 脚本将 selected 范围复制到同一 sheet 的最后一行。
为此,这个答案怎么样?
修改点:
- 在
var destRow = listToCopy.getLastRow()+1;
的情况下,检索listToCopy
范围的最后一行。- 在您的情况下,需要检索 sheet 的最后一行。
- 可以将源范围复制到目标范围作为起始范围,如
getRange(destRow, 1)
。- 范围的第一个数字是
1
。
- 范围的第一个数字是
spreadsheet
未声明。
当以上几点反映到你的脚本中,就会变成下面这样。
修改后的脚本:
为了使用这个脚本,请 select 范围和 运行 myFunction
的函数。这样,selected 范围被复制到相同 sheet.
function myFunction() {
var sheet = SpreadsheetApp.getActiveSheet();
var listToCopy = sheet.getActiveRange();
var destRow = sheet.getLastRow() + 1;
listToCopy.copyTo(sheet.getRange(destRow, 1));
}