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

如何修改Google Apps脚本,使Google Sheet新增顶行含当日日期并复制公式?

修改后的脚本(保留公式)
function addNewRow() {
  var spreadsheet = SpreadsheetApp.openById("1xwF-kM6KvOJYAfsmcDVBgO0yv6ZcFFMFvH33U7SzGtc");
  var sheet = spreadsheet.getSheetByName("Attendance");
  
  // 在第2行前插入新行
  sheet.insertRowBefore(2);
  
  // 复制原第2行(插入后变为第3行)的公式和格式到新第2行
  var sourceRange = sheet.getRange(3, 1, 1, sheet.getLastColumn());
  var targetRange = sheet.getRange(2, 1, 1, sheet.getLastColumn());
  sourceRange.copyTo(targetRange, SpreadsheetApp.CopyPasteType.PASTE_FORMULA, false);
  sourceRange.copyTo(targetRange, SpreadsheetApp.CopyPasteType.PASTE_FORMAT, false);
  
  // 设置当日日期到第3列(C列)
  var today = new Date();
  // 用官方工具格式化日期,适配时区且更稳定
  var formattedDate = Utilities.formatDate(today, Session.getScriptTimeZone(), "dd/MM/yyyy");
  sheet.getRange(2, 3).setValue(formattedDate);
}

关键改动说明

  • 新增公式复制逻辑:插入新行后,将原第2行(插入后变为第3行)的所有列公式、格式完整复制到新行,确保带公式的列自动继承原有计算规则
  • 优化日期格式化:替换手动拼接日期的方式,用Utilities.formatDate适配脚本时区,避免格式异常
  • 复制范围覆盖所有有效列,不会遗漏任何带公式的单元格

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 09:10:56