我只是想复制一个打开的工作表文件。我尝试了很多变化而没有成功。以下是一个示例。将重视任何帮助。谢谢。
function copyDocs() {
var file = DriveApp.getFilesByName('My Income Statement');
file.makeCopy();
}
使用数据检索DriveApp.getFilesByName()
是FileIterator。在这种情况下,使用检索文件next()
。
示例脚本有2种模式。
如果文件名在驱动器中只有一个,则可以使用以下示例脚本。本示例使用文件名复制文件。
function copyDocs() {
var file = DriveApp.getFilesByName('My Income Statement').next();
file.makeCopy();
}
如果存在具有相同文件名的文件,并且您要复制其中一个文件,则可以使用以下示例脚本。本示例使用fileID复制文件。可以按以下方式检索fileID。
对于文件,
https://docs.google.com/document/d/### File ID ###/edit
对于电子表格,
https://docs.google.com/spreadsheets/d/### File ID ###/edit
示例脚本:
function copyDocs() {
var file = DriveApp.getFileById("### File ID ###");
file.makeCopy();
}
本示例用于使用电子表格上的对话框打开复制的文件。由于复制的文件将作为新窗口打开,因此请允许打开弹出窗口。
dialog()
。通过上述流程,具有的文件fileId
被复制并作为新窗口打开。
function dialog() {
var data = '<input type="button" value="copy" onclick="google.script.run.withSuccessHandler(openfile).filecopy();"><script>function openfile(url) {window.open(url);}</script>';
var html = HtmlService.createHtmlOutput(data);
SpreadsheetApp.getUi().showModalDialog(html, 'Sample dialog');
}
function filecopy(){
var fileId = "### File ID ###";
return DriveApp.getFileById(fileId).makeCopy().getUrl();
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句