我正在使用Google App Script.我在尝试着:
在我看来,下面的代码应该可行,但事实并非如此.它确实完成了任务1和3 - 也就是说,它会复制并将副本保存到我想要的文件夹中.但是,它不会使用我指定的文件名保存文件.相反,它将其保存为"[原始电子表格文件名]的副本".要做到这一点,我正在使用File#makeCopy
(注意:我知道此问题之前已经得到解答,但我相信自谷歌日落以来,DocList服务尚未得到解答.)
当我制作这个简化的MCVE时,我发现它按预期工作:
function saveAsSpreadsheet() {
var sheet = SpreadsheetApp.getActiveSpreadsheet();
var destFolder = DriveApp.getFolderById("xxxxxxxxxxxxxxxxx");
DriveApp.getFileById(sheet.getId()).makeCopy("desired file name", destFolder);
} //END function saveAsSpreadsheet
Run Code Online (Sandbox Code Playgroud)
但是,我的原始代码没有 - 副本的名称是错误的:
function saveAsSpreadsheet() {
var sheet = SpreadsheetApp.getActiveSpreadsheet();
var buildingNameAddress = sheet.getRangeByName('buildingNameAddress').getValue();
Logger.log(buildingNameAddress); //Logs correct string
var destFolder = DriveApp.getFolderById("xxxxxxxxxxxxxxxxxxxxxx");
DriveApp.getFileById(sheet.getId()).makeCopy(buildingNameAddress, destFolder);
}
Run Code Online (Sandbox Code Playgroud)