【问题标题】:Google Script Date February 1 as February 32谷歌脚本日期 2 月 1 日为 2 月 32 日
【发布时间】:2016-02-01 16:35:07
【问题描述】:

我有一个谷歌脚本,如果其他列中的数据被编辑,它会自动在特定列中输入今天的日期。它工作得很好,但我今天发现“2 月 1 日”是“2 月 32 日”。下面是我的代码:

function onEdit() {
  var s = SpreadsheetApp.getActiveSheet();
  var r = s.getActiveCell();
  var sheetName = SpreadsheetApp.getActiveSheet().getSheetName();

  //range to edit
  var editRange = { // K:AB
    left : 11,
    right : 28
  };

  // Exit if we're out of range
  if (r.getColumn() < editRange.left || r.getColumn() > editRange.right) return;

  //Perform if on sheets if it ends in "15" "16" or "Old"/"old"
  if(sheetName.indexOf("15")>-1 || sheetName.indexOf("16")>-1 || sheetName.indexOf("Old")>-1 || sheetName.indexOf("old")>-1){
    if( r.getColumn() != 2) { //checks the column
      var row = r.getRow();
      var time = new Date();
      time = Utilities.formatDate(time, "MST", "DDMMMYYYY");
      SpreadsheetApp.getActiveSheet().getRange('C' + row.toString()).setValue(time);
    }
  };
 };

【问题讨论】:

    标签: date google-apps-script google-sheets


    【解决方案1】:

    根据date format docs,大写的“D”是一年中的一天,而不是一个月中的一天。为此,请使用小写“d”。

    【讨论】:

    • 有趣。去年年底我一直在使用“DD”,效果很好。但我将其更改为“dd”,至少在 2 月 1 日,它看起来运行良好。谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-06-20
    • 2020-01-03
    • 1970-01-01
    • 1970-01-01
    • 2012-05-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多