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

Google Sheets数据复制时为指定日期增加7天的实现求助

给Google Sheets日期增加7天的实现方案

你需要给valueRange[17]对应的日期加7天,核心是利用JavaScript的Date对象处理——Google Sheets里的日期在Apps Script中会被解析为Date类型,直接通过毫秒数计算即可实现天数累加。

修改后的完整代码

function GENERAL() {
  var Cop = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("GO");
  var LP = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("0_Test-LISTE PROJETS");
  var values = LP.getRange('A4:V' + LP.getLastRow()).getValues();
  
  // 定义日期加天的辅助函数
  function addDays(date, days) {
    if (!(date instanceof Date)) return date; // 如果不是日期类型,直接返回原内容
    return new Date(date.getTime() + days * 24 * 60 * 60 * 1000);
  }
  
  var res = values.flatMap(valueRange =>
    [
      [valueRange[5], valueRange[7], valueRange[9], valueRange[16], valueRange[20], 'duréé projet' /**color red*/],//project lenght
      [valueRange[5], valueRange[7], valueRange[9], valueRange[16], valueRange[17], 'phase de conception'/**color BLUE*/],//research lenght
      [valueRange[5], valueRange[7], valueRange[9], valueRange[17], addDays(valueRange[17],7) , 'attente retour BAT'/**color white*/],//waiting for client
      [valueRange[5], valueRange[7], valueRange[9], addDays(valueRange[17],7), valueRange[19], 'phase de fabrication'/**color green*/],//production time
      [valueRange[5], valueRange[7], valueRange[9], valueRange[19], valueRange[20], 'phase installation'/**color purple*/]//installation on site
    ]
  );
  Cop.getRange(2, 1, res.length, res[0].length).setValues(res);
}

关键说明

  • 新增addDays辅助函数:专门处理日期累加,同时做了类型判断,避免非日期内容出错
  • 把你标注的两处待修改的valueRange[17]替换成addDays(valueRange[17],7),直接得到加7天后的日期对象
  • 该方法会保留原日期的时间部分(如果有的话),若需要统一为当天0点,可在函数内额外处理

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 04:12:54