我正在使用的脚本是在git上提供的。它旨在覆盖每天的数据。我想在每天结束时复制数据并将其写入另一张表以进行存档。我可以创建命名工作表并捕获数据,但是我在将数据粘贴到新工作表时遇到了问题。
function archiveSheet() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName("copy_of_inverter_data");
var sheetSiteInfo = ss.getSheetByName("details");
//set archive sheet name
var currentDate = Utilities.formatDate(sheetSiteInfo.getRange("B5").getValue(), "GMT", "yyyy-MM-dd");
var nextSheet = "id_"+currentDate;
// create sheet with current date
ss.insertSheet(nextSheet);
Logger.log(currentDate);
Logger.log(nextSheet);
//copy data to new sheet
var range = sheet.getDataRange();
var data = range.getValues();
var destination = ss.getSheetByName(nextSheet);
Logger.log(range);
Logger.log(data);
Logger.log(sheet);
range.copyTo(nextSheet);//This line not working
}
答案 0 :(得分:1)
这一行:
range.copyTo(nextSheet);
应该是:
range.copyTo(destination.getRange("A1"));
您正在使用copyTo(range)
所需参数是一个范围。您使用nextSheet
作为参数,这是一个字符串,而不是范围。