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

Google Sheets脚本开发:批量复制指定Drive文件夹表格值到目标表格

解决Google Sheets脚本复制纯值并批量创建标签的问题

核心需求实现方案

针对你需要的功能——读取指定Drive文件夹内的表格,复制"ALL"标签的纯值到目标表格并按序号命名新标签,以下是修正后的完整脚本:

function onOpen() {
  // 创建自定义菜单
  const ui = SpreadsheetApp.getUi();
  ui.createMenu('批量导入数据')
    .addItem('开始导入', 'importAllSheetsValues')
    .addToUi();
}

function importAllSheetsValues() {
  const folderId = '你的文件夹ID'; // 替换为"My folder"的ID
  const targetSpreadsheetId = '你的目标表格ID'; // 替换为目标SS的ID
  const folder = DriveApp.getFolderById(folderId);
  const files = folder.getFiles();
  const targetSs = SpreadsheetApp.openById(targetSpreadsheetId);
  let sheetCounter = 1; // 用于命名新标签的序号

  while (files.hasNext()) {
    const file = files.next();
    // 只处理Google Sheets文件
    if (file.getMimeType() === MimeType.GOOGLE_SHEETS) {
      const sourceSs = SpreadsheetApp.open(file);
      const sourceSheet = sourceSs.getSheetByName('ALL');
      
      // 跳过没有"ALL"标签的表格
      if (!sourceSheet) continue;

      // 获取"ALL"标签的所有纯值(不含公式)
      const dataValues = sourceSheet.getDataRange().getValues();
      const rowCount = dataValues.length;
      const colCount = dataValues[0].length;

      // 检查目标表格中是否已存在同名序号标签,若存在则跳过或重命名
      let newSheet = targetSs.getSheetByName(String(sheetCounter));
      if (!newSheet) {
        newSheet = targetSs.insertSheet(String(sheetCounter));
      } else {
        // 可选:如果需要覆盖已有标签内容,可清空后重新写入
        newSheet.clearContents();
      }

      // 将纯值写入新标签
      newSheet.getRange(1, 1, rowCount, colCount).setValues(dataValues);
      sheetCounter++;
    }
  }
}

关键修正点说明

  • 获取纯值而非公式:使用getDataRange().getValues()直接提取单元格的计算后的值,彻底避免原公式带来的#REF错误。
  • 正确遍历源表格:脚本会逐个打开文件夹内的Google Sheets文件,定位到"ALL"标签,而非错误地从目标表格读取数据。
  • 序号命名逻辑:通过sheetCounter变量自动生成"1""2""3"这样的标签名,确保命名规则符合需求。
  • 容错处理:跳过没有"ALL"标签的表格,同时处理已存在同名标签的情况(可选择跳过或覆盖内容)。

使用注意事项

  1. 替换代码中的你的文件夹ID和你的目标表格ID为实际ID。
  2. 第一次运行时,需要授权脚本访问Drive和Sheets的权限。
  3. 如果源表格的"ALL"标签数据量较大,脚本运行时间可能较长,需耐心等待。

内容的提问来源于stack exchange,提问作者José Buzón

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.07 20:17:28