我正在尝试在已创建的文件夹中创建新的 Google 表格,但内容类型存在问题。
我已经搜索过这个错误,但没有找到任何东西。大多数搜索都会出现MimeType
错误,但我不认为这是问题所在。下面是我正在使用的代码:
var ss = SpreadsheetApp.getActiveSpreadsheet();
var newFolder = DriveApp.getFolderById("MyID").createFolder("New Folder");
newFolder.createFile("myFileName",ss,MimeType.GOOGLE_DOCS);
每当我在电子表格中运行此命令时,都会收到以下错误:
无效参数:file.contentType(第 3 行,文件“Code”)
我尝试过使用“”作为内容createFile
.
下面的示例怎么样?我也无法使用 GOOGLE_SHEETS 和 GOOGLE_DOCS 的 MimeType。我不知道为什么。所以我建议使用 SpreadsheetApp.create()。流程如下。
-
使用 SpreadsheetApp.create() 创建电子表格。
-
将目标文件夹信息添加到电子表格中。
-
从电子表格中删除原始文件夹信息。
这样,您就可以将电子表格创建到您想要的文件夹中。
Script:
var sheetfile = "myFileName";
var destfolder = "MyID";
var sheet = SpreadsheetApp.create(sheetfile);
var file = DriveApp.getFileById(sheet.getId());
var destfolder = DriveApp.getFolderById(destfolder).addFile(file);
var docfile = file.getParents().next().removeFile(file);
更新日期:2020 年 11 月 25 日
2020 年 7 月 27 日,该方法moveTo(destination)
加入。并且,方法addFile
and removeFile
将被弃用。Ref https://developers.google.com/apps-script/reference/drive/folder#expandable-1所以,当方法moveTo(destination)
用于上面的脚本,就变成了下面这样。
var sheetfile = "myFileName";
var destfolder = "MyID";
var sheet = SpreadsheetApp.create(sheetfile);
var file = DriveApp.getFileById(sheet.getId());
var destfolder = DriveApp.getFolderById(destfolder);
var docfile = file.moveTo(destfolder);
-
当使用Drive API的Files: insert方法时,还可以使用以下脚本。Ref https://developers.google.com/drive/api/v2/reference/files/insert
var sheetfile = "myFileName";
var destfolder = "MyID";
Drive.Files.insert({title: sheetfile, mimeType: MimeType.GOOGLE_SHEETS, parents: [{id: destfolder}]});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)