希望相对简单,但似乎找不到答案。
我有一个将当前工作表复制(存档)到另一个电子表格的功能,但是在目标电子表格中它称为“ [工作表名称]的副本”。
希望我可以摆脱零件的复制,但是setName()似乎无效。
下面的代码中的所有内容都可以使用到最后两行。
function archiveCurrentSheet() {
SpreadsheetApp.getUi()
var areyousure = Browser.msgBox('Are you sure you want to archive this sheet?', Browser.Buttons.OK_CANCEL);
if (areyousure == "cancel" ) {
}
else {
var source = SpreadsheetApp.getActiveSpreadsheet();
var currentSheetName = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet().getName();
var sheet = source.getActiveSheet();
var destination = SpreadsheetApp.openById("ID");
sheet.copyTo(destination);
var sheetRename = SpreadsheetApp.openById("ID").getSheets();
sheetRename.setName(currentSheetName);
}
}
它给出错误:“ TypeError:在对象Sheet,Sheet,Sheet,Sheet,Sheet,Sheet,Sheet,Sheet中找不到函数setName。”
谢谢!
p.s。好处:那将是我如何删除当前
答案 0 :(得分:1)
sheet.copyTo(destination)方法返回新的工作表,因此您可以执行以下操作。
sheet.copyTo(destination).setName(currentSheetName);