【问题标题】:How do I handle dates from a google spreadsheet using a google apps script如何使用谷歌应用脚​​本处理来自谷歌电子表格的日期
【发布时间】:2012-08-20 10:08:34
【问题描述】:

如何处理这样的电子表格中的日期。

我需要从第 2 列中获取最后一个日期,然后找到下一个日期。我已创建此代码来检索最后日期。

lastDateRow = sheet.getLastRow()-1;
lastDate = Date(sheet.getRange("B"+(lastDateRow)+":B"+(lastDateRow).getValue());

【问题讨论】:

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


    【解决方案1】:

    您从工作表中获得的值已经是一个日期对象(包括年份、日期、小时数等),无需进一步操作。

    当您说“下一个日期”时,我猜您的意思是“下一个日期”?如果是这样,只需将 24*60*60*1000 以毫秒为单位添加到日期,您就会得到第二天;-)

    在代码中它变成了这样:

    function xxx(){
    var sheet = SpreadsheetApp.getActiveSheet()
    var lastDateRow = sheet.getLastRow();
    var lastDate = sheet.getRange(lastDateRow,2).getValue();
    Logger.log(lastDate)
    var nextDay = new Date(lastDate.getTime()+24*60*60*1000);
    Logger.log(nextDay)
    }
    

    记录仪测试结果:

    Tue Aug 21 15:00:00 PDT 2012
    Wed Aug 22 15:00:00 PDT 2012
    

    【讨论】:

      【解决方案2】:

      实际上这是我在 stackowerflow 上查找 js nextdate fnction 后得到的结果。

      var lastDateRow = sheet.getLastRow();
      var lastDate = sheet.getRange(lastDateRow,2).getValue();
      lastDate = getTomorrow(lastDate,1);
      
      function getTomorrow(d,offset) {
          if (!offset) { offset = 1 }
          return new Date(new Date(d.getTime()).setDate(d.getDate() + offset));
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-12-30
        • 1970-01-01
        • 2013-03-31
        • 2013-12-27
        • 1970-01-01
        • 1970-01-01
        • 2012-06-15
        相关资源
        最近更新 更多