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

请求编写Google Apps Script实现每月自动归档Sheet1列数据至Sheet2

完整实现代码
function storeData() {
  // 替换为你的表格ID
  const SPREADSHEET_ID = '你的表格ID';
  const SOURCE_SHEET_NAME = 'Sheet 1';
  const ARCHIVE_SHEET_NAME = 'Sheet 2';
  const SOURCE_RANGE = 'A1:A150'; // 要复制的源数据范围

  try {
    // 打开表格并获取工作表
    const ss = SpreadsheetApp.openById(SPREADSHEET_ID);
    const sourceSheet = ss.getSheetByName(SOURCE_SHEET_NAME);
    const archiveSheet = ss.getSheetByName(ARCHIVE_SHEET_NAME);

    if (!sourceSheet || !archiveSheet) {
      throw new Error('未找到指定的工作表,请检查名称是否正确');
    }

    // 获取源数据
    const sourceData = sourceSheet.getRange(SOURCE_RANGE).getValues();

    // 确定目标列:根据当前月份(1月对应第1列,2月第2列...12月第12列)
    const currentMonth = new Date().getMonth() + 1; // getMonth()返回0-11,加1得到1-12
    const targetColumn = currentMonth;

    // 写入数据到目标列
    const targetRange = archiveSheet.getRange(1, targetColumn, sourceData.length, 1);
    targetRange.setValues(sourceData);

    // 可选:在目标列第一行添加月份标识,方便识别历史数据
    const monthNames = ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月'];
    archiveSheet.getRange(1, targetColumn).setValue(monthNames[currentMonth - 1]);

    SpreadsheetApp.getUi().alert('数据归档成功!');
  } catch (error) {
    SpreadsheetApp.getUi().alert('数据归档失败:' + error.message);
    console.error(error);
  }
}
代码说明
  • 表格ID替换:将SPREADSHEET_ID的值替换为你的Google表格ID(可从表格URL中提取)
  • 源数据范围:SOURCE_RANGE指定了Sheet1中要复制的A1-A150区域,需调整范围可直接修改此值
  • 目标列逻辑:通过currentMonth获取当前月份,对应Sheet2的列(1月→A列,2月→B列…12月→L列),确保每月数据存入对应列
  • 错误处理:添加工作表存在性检查和异常捕获,避免因名称错误或其他问题导致脚本崩溃
  • 可选标识:自动在目标列第一行添加月份名称,方便快速识别各月历史数据
设置每月自动执行
  1. 打开Google表格,点击菜单栏「扩展程序」→「Apps脚本」
  2. 在脚本编辑器中,点击左侧的「触发器」图标(时钟形状)
  3. 点击「添加触发器」,设置以下参数:
    • 选择要运行的函数:storeData
    • 选择部署类型:「Head」
    • 选择事件源:「时间驱动」
    • 选择时间类型:「基于月计时器」
    • 设置日期和时间:选择每月固定日期(比如每月1号)和时间,确保在Sheet1更新数据后执行
  4. 点击「保存」,按提示完成脚本权限授权

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.03 09:34:50