Google apps script 如何使用google脚本将多个范围复制到另一个工作表中的同一位置?
我想将多个范围从一张图纸复制到另一张图纸 我尝试过使用getRangelist函数,但它似乎不是专门为这个目的设计的Google apps script 如何使用google脚本将多个范围复制到另一个工作表中的同一位置?,google-apps-script,google-sheets,Google Apps Script,Google Sheets,我想将多个范围从一张图纸复制到另一张图纸 我尝试过使用getRangelist函数,但它似乎不是专门为这个目的设计的 var rangeList = SpreadsheetApp.getActive().getRangeList(['B2:i8','B10:i16','B18:i24', 'B26:i32', 'B34:i40']); var copyrange = SpreadsheetApp .getActiveSpreadsheet() .getSheetByName("
var rangeList = SpreadsheetApp.getActive().getRangeList(['B2:i8','B10:i16','B18:i24', 'B26:i32', 'B34:i40']);
var copyrange = SpreadsheetApp
.getActiveSpreadsheet()
.getSheetByName("ENTRATE MAIN 2")
.getRangeList(['B2:i8', 'B10:i16','B18:i24', 'B26:i32', 'B34:i40']);
rangeList.copyTo(rangelist);
任何将多个范围复制到另一张图纸上的智能方法都将受到欢迎。因为范围列表是范围的集合,所以您必须在集合中循环并复制每个范围
function test () {
try {
var spread = SpreadsheetApp.getActiveSpreadsheet();
var sheet = spread.getSheetByName("Sheet1");
var rlist = sheet.getRangeList(["A1:A5", "B7:B10", "C12:C16"]);
sheet = spread.getSheetByName("Sheet2");
for( var i=0; i<rlist.getRanges().length; i++ ) {
var r1 = rlist.getRanges()[i];
var r2 = sheet.getRange(r1.getA1Notation());
r1.copyTo(r2);
}
}
catch(err) {
Logger.log(err);
}
}
功能测试(){
试一试{
var spread=SpreadsheetApp.getActiveSpreadsheet();
var sheet=spread.getSheetByName(“Sheet1”);
var rlist=sheet.getRangeList([“A1:A5”、“B7:B10”、“C12:C16”]);
sheet=spread.getSheetByName(“Sheet2”);
对于(var i=0),你认为什么是“智能方式”?更少的代码——你最好使用谷歌表高级服务(谷歌Tabl API)吗??请阅读我认为@Rubén的评论对您的情况很有用。如果您想使用范围列表的值副本,那么这个气体库如何?这个库就像使用API表增强范围列表的包装器。如果这不是您想要的方向,我道歉。