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

如何在Google Apps Script中设置包含变量与固定文本的复制文件文件名?

实现Google Apps Script生成包含公司名与固定文本的文件名

当然可以实现这个需求!只需要调整代码里makeCopy方法的文件名参数,把可变的auditorFirmName和固定文本"Template"拼接起来就好。

具体修改步骤:

  1. 找到代码中负责生成副本文件名的这一行:
    var copy = templateFile.makeCopy(auditorFirmName, templateFolder);
    
  2. 将其替换为以下两种写法之一即可:
    • 推荐写法(ES6模板字符串):语法更直观易读
      var copy = templateFile.makeCopy(`${auditorFirmName} Template`, templateFolder);
      
    • 兼容写法(传统字符串拼接):适配所有脚本运行环境
      var copy = templateFile.makeCopy(auditorFirmName + " Template", templateFolder);
      

修正后的完整代码:

function autoFillGoogleDocFromForm(e) { 
  var timestamp = e.values[0]; 
  var auditorFirmName = e.values[1]; 
  var auditorAddressLine1 = e.values[2]; 
  var auditorAddressLine2 = e.values[3]; 
  var auditorAddressLine3 = e.values[4]; 
  var auditorAddressLine4 = e.values[5]; 
  var dateOfLetterIssue = e.values[6]; 
  const template = "template"; 
  var templateFile = DriveApp.getFileById(""); // 请填入你的模板文件ID
  var templateFolder = DriveApp.getFolderById(""); // 请填入目标文件夹ID
  // 生成包含公司名和固定文本的文件名
  var copy = templateFile.makeCopy(`${auditorFirmName} Template`, templateFolder); 
  var doc = DocumentApp.openById(copy.getId()); 
  var body = doc.getBody(); 
  body.replaceText("{{Insert Auditor Firm name}}", auditorFirmName); 
  body.replaceText("{{Address Line 1}}", auditorAddressLine1); 
  body.replaceText("{{Address Line 2}}", auditorAddressLine2); 
  body.replaceText("{{Address Line 3}}", auditorAddressLine3); 
  body.replaceText("{{Address Line 4}}",auditorAddressLine4); 
  body.replaceText("{{Date}}",dateOfLetterIssue); 
  doc.saveAndClose(); 
}

补充说明:

  • 两种写法最终都会生成类似John Smith Auditors Template的文件名,根据个人习惯选择即可。
  • 注意代码中templateFile和templateFolder的ID需要你自行填入对应的文件/文件夹ID,否则脚本无法正常执行。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.29 14:47:38