You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

基于模板生成表格的脚本:如何通过ID指定目标文件夹?

将生成的电子表格保存到指定Drive文件夹的解决方案

你只需要借助DriveApp服务,在创建新表格后将其移动到目标文件夹即可解决这个问题——因为SpreadsheetApp.create()默认会把文件创建在个人Drive的根目录。下面是修改后的完整脚本:

function onOpen() { 
  SpreadsheetApp.getUi().createMenu('Genera Scheda') 
  .addItem('Genera Scheda', 'createSpreadsheet') 
  .addToUi()
} 

function createSpreadsheet() { 
  // 替换成你的目标文件夹ID
  const TARGET_FOLDER_ID = "你的文件夹ID";
  
  var ss = SpreadsheetApp.getActive(); 
  var sheet = ss.getActiveSheet(); 
  var row = sheet.getActiveCell().getRow(); 
  var name = sheet.getRange(row, 2).getValue(); 
  var templateSheet1 = ss.getSheetByName('xxx'); 
  var templateSheet2 = ss.getSheetByName('xxx2'); 
  
  // 依然创建新表格(默认在根目录)
  var newSpreadsheet = SpreadsheetApp.create(name); 
  templateSheet1.copyTo(newSpreadsheet).setName("Scheda"); 
  templateSheet2.copyTo(newSpreadsheet).setName("Import"); 
  newSpreadsheet.deleteSheet(newSpreadsheet.getSheetByName("Foglio1")); 

  // 获取新表格对应的Drive文件,并移动到目标文件夹
  const newFile = DriveApp.getFileById(newSpreadsheet.getId());
  const targetFolder = DriveApp.getFolderById(TARGET_FOLDER_ID);
  newFile.moveTo(targetFolder);
}

关键说明:

  • 获取文件夹ID:打开目标Drive文件夹,查看浏览器地址栏,URL末尾的一串长字符就是文件夹ID(比如https://drive.google.com/drive/folders/XXXXXXXXXXXXXXXXXXXXXX中的XXXXXXXXXXXXXXXXXXXXXX)
  • 权限授权:第一次运行修改后的脚本时,系统会提示需要额外的Drive访问权限,你需要授权通过才能让脚本移动文件
  • 移动逻辑:moveTo()方法会把文件从原位置(根目录)移动到目标文件夹,不会留下副本

这样修改后,生成的电子表格就会直接出现在你指定的文件夹里,而不是个人Drive的根目录了。

内容的提问来源于stack exchange,提问作者user13509354

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.08 09:17:49