我正在尝试创建一个电子表格,该电子表格需要在一个电子表格中进行多次复制,但是每个副本中也要包含触发器,这似乎比我最初想象的要难。
实际项目涉及一个可编辑的数据库,该数据库从单张电子表格中获取每张电子表格的副本,这些副本来自主电子表格,然后需要复制整个内容。
我首先尝试创建第一个电子表格的副本,但似乎触发器所在的项目似乎没有被复制。我尝试使用可安装的触发器,但似乎无法从另一个电子表格中轻松完成此操作,如here所述(我不太了解这个问题的答案)。我还研究了将项目从一个电子表格复制到另一个电子表格的可能性,但这似乎也无济于事。
我很欣赏这很模糊,但是我真的不知道该怎么办,任何建议都将不胜感激。
答案 0 :(得分:0)
嗯,我不确定是否要复制触发器。 (我通常只对菜单项使用onOpen触发器。)但是,我可以确认以下代码复制了电子表格及其所有嵌入式脚本。
function copyTemplate() {
//A file needs a name
var fileName = "Your File Name Here"
//Get the ID of the Master Spreadsheet (This script is embedded, you can change to get by id.)
var id = SpreadsheetApp.getActiveSpreadsheet().getId();
//Get the Destination folder by ID
var destFolder = DriveApp.getFolderById("YOUR_ID_HERE")
//Get the master template, make a copy in the destination folder.
DriveApp.getFileById(id).makeCopy(fileName, destFolder)
}//END OF FUNCTION