如何将触发器/项目从一个电子表格复制到另一个电子表格?

时间:2019-04-05 14:29:31

标签: google-apps-script google-sheets triggers

我正在尝试创建一个电子表格,该电子表格需要在一个电子表格中进行多次复制,但是每个副本中也要包含触发器,这似乎比我最初想象的要难。

实际项目涉及一个可编辑的数据库,该数据库从单张电子表格中获取每张电子表格的副本,这些副本来自主电子表格,然后需要复制整个内容。

我首先尝试创建第一个电子表格的副本,但似乎触发器所在的项目似乎没有被复制。我尝试使用可安装的触发器,但似乎无法从另一个电子表格中轻松完成此操作,如here所述(我不太了解这个问题的答案)。我还研究了将项目从一个电子表格复制到另一个电子表格的可能性,但这似乎也无济于事。

我很欣赏这很模糊,但是我真的不知道该怎么办,任何建议都将不胜感激。

1 个答案:

答案 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