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

求助:用Google Apps Script实现Sheet1月度数据归档至Sheet2

实现Sheet1月度数据归档至Sheet2的Google Apps Script方案

步骤1:打开脚本编辑器

  • 打开目标Google表格,点击顶部菜单栏的「扩展程序」→「Apps Script」,进入脚本编辑界面。
  • 清空默认Code.gs文件的内容,准备写入自定义脚本。

步骤2:编写归档脚本

将以下代码粘贴到Code.gs中,关键逻辑已标注注释:

function archiveMonthlyData() {
  // 获取当前表格实例
  const ss = SpreadsheetApp.getActiveSpreadsheet();
  // 按名称获取Sheet1和Sheet2
  const sheet1 = ss.getSheetByName('Sheet1');
  const sheet2 = ss.getSheetByName('Sheet2');
  
  // 获取Sheet1中已填充的全部有效数据
  const dataRange = sheet1.getDataRange();
  const data = dataRange.getValues();
  
  // 若Sheet1无数据,直接终止脚本
  if (data.length === 0) return;
  
  // 在Sheet2的末尾追加Sheet1的数据
  sheet2.getRange(
    sheet2.getLastRow() + 1,  // 从Sheet2最后一行的下一行开始
    1,                        // 从第1列开始
    data.length,              // 要粘贴的行数
    data[0].length            // 要粘贴的列数
  ).setValues(data);
  
  // 清空Sheet1数据(若Sheet1有表头,看下方修改说明保留表头)
  sheet1.clearContents();
  
  // --- 保留表头的修改方式 ---
  // 如果Sheet1第1行是表头,只清空第2行及以下的数据,替换上面的clearContents()为:
  // sheet1.getRange(2, 1, sheet1.getLastRow() - 1, sheet1.getLastColumn()).clearContents();
}

步骤3:设置定时触发器(自动每月执行)

要实现当月结束自动归档,需配置时间驱动触发器:

  • 在脚本编辑器左侧,点击时钟形状的「触发器」图标。
  • 点击右下角「添加触发器」,按以下参数设置:
    • 选择函数:archiveMonthlyData
    • 部署类型:「基于时间的触发器」
    • 时间驱动类型:「月份计时器」
    • 月份中的某一天:选择每月最后一天(或你需要的归档日期)
    • 时间窗口:选一个用户不会提交数据的时段(比如「晚上10点到11点」)
  • 保存后按提示完成授权(首次运行需要授权脚本访问你的表格)。

步骤4:手动测试脚本

  • 在脚本编辑器的代码界面,点击运行按钮(三角形图标),选择archiveMonthlyData执行。
  • 检查Sheet2是否成功追加数据,Sheet1是否按预期清空(若保留表头,确认表头未被删除)。

可选优化:给归档数据添加月份标记

如果需要在Sheet2中区分不同月份的数据,可以修改脚本,给每条数据加上归档月份:
在const data = dataRange.getValues();之后添加以下代码:

// 获取当前归档月份(格式为YYYY-MM)
const currentMonth = Utilities.formatDate(
  new Date(), 
  Session.getScriptTimeZone(), 
  "YYYY-MM"
);
// 给每一行数据头部添加月份标记
const dataWithMonth = data.map(row => [currentMonth, ...row]);

然后将setValues(data)改为setValues(dataWithMonth)即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.24 20:13:28