在我的脚本中,我在主驱动器中有模板文档,但是当创建副本并使用我的 excel 数据填充时,我希望它保存在驱动器中的文件夹中。我有脚本这样做,但它在主 Google Drive 中有一个文件副本,另一个在我想要的文件夹中。如果我删除其中一个副本,它会同时删除这两个副本。
有什么办法可以让它自动保存在指定的文件夹中,而不是在主驱动器文件夹中?
在我的脚本中,我在主驱动器中有模板文档,但是当创建副本并使用我的 excel 数据填充时,我希望它保存在驱动器中的文件夹中。我有脚本这样做,但它在主 Google Drive 中有一个文件副本,另一个在我想要的文件夹中。如果我删除其中一个副本,它会同时删除这两个副本。
有什么办法可以让它自动保存在指定的文件夹中,而不是在主驱动器文件夹中?
Google 驱动器中的文件夹与计算机中的文件夹并不完全相同:将文件放在“根”文件夹和另一个文件夹中并不意味着有 2 个文件,而是 1 个且只有 2 个标签的文件......这就是为什么你不能删除一个而不删除另一个!
解决方案只是在脚本中使用这些标签,这是它的工作原理:(我评论了每个步骤以使其清楚。)
function othertest(){
folder=DocsList.createFolder("MyFolder"); // or getFolderById or whatever other way to get your target folder
var file=DocsList.createFile('File2', 'Empty');// just an empty file for test but this would be your file copy that you want to "move"
file.addToFolder(folder);// put it in the folder
file.removeFromFolder(DocsList.getRootFolder());// and remove from the root
}
另一个可能的解决方案是直接在目标文件夹中创建文件,因为文件夹对象支持该createFile
方法。(不确定您是否可以在特定用例中做到这一点)
这是一个示例,您可以看到该文件不在根文件夹中。
function createFileinFoldertest() {
var folder = DocsList.getFolder('test')
folder.createFile('Empty test fileName','nothing in there')
}