0
我想从一个工作表复制行到另一个使用谷歌sciprt的spreadhsheet,但同样不工作。谷歌脚本:如何从一个工作表复制到另一个电子表格
请你能帮我解释一下怎么做这个作品吗?
function CopyRows() {
var source = SpreadsheetApp.openById('XXXXXX');
var sourcesheet = source.getSheetByName('sheet1');
var target = SpreadsheetApp.openById('YYYYY')
var targetsheet = target.getSheetByName('sheet1');
var targetrange = targetsheet.getRange(targetsheet.getLastRow() + 1 , 1);
sourcesheet.getRange(2, 1, sourcesheet.getLastRow(), sourcesheet.getLastColumn()).copyTo(targetrange);
}
您是否知道是否存在将行从一张纸复制到其他电子表格中的另一张纸?
问候
编辑:2013年1月7日
感谢PhysLabTsar,你的脚本都非常好,从一个片到其他电子表格copyrows。
function myFunction() {
var source = SpreadsheetApp.openById('xxxxxx');
var sourcesheet = source.getSheetByName('sheet1');
var target = SpreadsheetApp.openById('xxxxx')
var targetsheet = target.getSheetByName('sheet1');
var targetrange = targetsheet.getRange(2, 1, sourcesheet.getLastRow(), sourcesheet.getLastColumn());
var rangeValues = sourcesheet.getRange(2, 1, sourcesheet.getLastRow(), sourcesheet.getLastColumn()).getValues();
targetrange.setValues(rangeValues);
}
编辑:CopyRows从倍数表
function ShellCopyValues(){
var sheets = ['sheet1','sheet2','sheet3','sheet4','sheet4'];
for (var s in sheets){
CopyRows(sheets[s]);
}
}
function CopyRows(uname) {
var source = SpreadsheetApp.openById('XXXXXX');
var sourcesheet = source.getSheetByName(uname);
var target = SpreadsheetApp.openById('YYYYYY')
var targetsheet = target.getSheetByName(uname);
var targetrange = targetsheet.getRange(2, 1, sourcesheet.getLastRow(), sourcesheet.getLastColumn());
var rangeValues = sourcesheet.getRange(2, 1, sourcesheet.getLastRow(), sourcesheet.getLastColumn()).getValues();
targetrange.setValues(rangeValues);
}
如果任何人有这样做一个最好的办法。请不要让我知道。
最好的问候,
您可以在使用'setValues()'方法后在'final'电子表格中抵销值。重要的部分是'final'范围的尺寸,或者在您的情况下'targetrange',必须与'rangeValues'尺寸相匹配。 – PhysLabTsar
非常感谢...现在正在工作....我怎样才能让这个工作多重表。我的意思是复制工作表1到工作表1,工作表2到工作表2,工作表3到工作表3 ...... –
谢谢....我找到了从复制工作表复制的方式 –