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

如何将Google Sheet带邮编城市列导入Google Docs指定位置?

实现Google Sheet数据批量填充到Google Docs指定位置

前提准备

  • 确保你的Google Sheet和Google Docs都已共享给当前登录的Google账号,且拥有编辑权限
  • 提前记录以下信息:
    • Google Sheet的ID(从Sheet的URL中提取,格式类似https://docs.google.com/spreadsheets/d/[SheetID]/edit)
    • Google Docs的ID(同理从Docs的URL中提取)
    • Sheet中“带邮编的城市”列所在的工作表名称(默认是Sheet1)
    • Docs中用来填充数据的占位符,比如提前在指定位置插入{{城市邮编}}

步骤1:打开Google Apps Script编辑器

  • 打开目标Google Sheet,点击顶部菜单栏的扩展程序 > Apps Script
  • 清空默认的Code.gs内容,准备粘贴脚本

步骤2:编写自动化脚本

function fillCitiesToDocs() {
  // 替换为你的实际配置信息
  const SHEET_ID = "你的Google Sheet ID";
  const SHEET_NAME = "Sheet1";
  const DOCS_ID = "你的Google Docs ID";
  const PLACEHOLDER = "{{城市邮编}}"; // 与Docs中的占位符保持一致

  // 获取Sheet中的城市数据
  const sheet = SpreadsheetApp.openById(SHEET_ID).getSheetByName(SHEET_NAME);
  // 假设“带邮编的城市”在A列,非A列可修改为对应列标识(如B列写"B:B")
  const cityData = sheet.getRange("A:A").getValues();
  // 过滤空行数据
  const validCities = cityData.filter(row => row[0] !== "").map(row => row[0]);

  // 遍历每个城市,生成对应Docs文档
  validCities.forEach(city => {
    // 复制原Docs为新文档,命名包含当前城市信息
    const newDoc = DocumentApp.openById(DOCS_ID).makeCopy(`伦敦城市详情_${city}`);
    const body = newDoc.getBody();
    // 替换占位符为当前城市数据
    body.replaceText(PLACEHOLDER, city);
    // 保存并关闭文档
    newDoc.saveAndClose();
    console.log(`已生成包含${city}的文档`);
  });
}

步骤3:配置脚本参数

  • 将代码中的SHEET_ID、SHEET_NAME、DOCS_ID替换为你自己的信息
  • 若“带邮编的城市”列不是A列,修改getRange("A:A")为对应列的标识(如B列写"B:B")
  • 确保Docs中的占位符与代码里的PLACEHOLDER完全匹配

步骤4:运行脚本

  • 点击脚本编辑器顶部的运行按钮,首次运行会触发权限验证,按提示完成授权即可
  • 运行完成后,可在Google云端硬盘中找到生成的、每个包含对应城市邮编数据的Docs文档

可选调整

  • 若不需要生成多个Docs副本,而是要将所有城市数据依次填充到同一Docs的不同位置,可修改脚本逻辑,比如按顺序替换多个占位符或追加内容
  • 可添加错误处理代码,避免因空数据或权限问题导致脚本中断

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.20 14:57:28