【问题标题】:Compare date with present date in google sheets script将日期与谷歌表格脚本中的当前日期进行比较
【发布时间】:2020-05-04 09:02:30
【问题描述】:

我想将 Referral Date 列中的日期与当前日期进行比较,如果 Referral Date 是如果不抛出错误“未来日期推荐”,则小于当前日期然后继续执行脚本。

function dateFun() { 
var ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Worksheet");
var headers = ss.getRange('A:Z').getValues()[0];
var column =headers.indexOf("Referral Date")+1;
var presentDay = new Date();
  if (column.valueOf()>presentDay){
  }else{
SpreadsheetApp.getUi().alert("Future Date Referral")
 }
}

图片供参考

希望它清楚!

【问题讨论】:

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


    【解决方案1】:

    日期对象可以与逻辑运算符进行比较。

    好的,您在这里是正确的,但是您缺少一些从电子表格中获取数据的重要方法。

    function dateFun() {
      // Open the worksheet 
      var ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Worksheet");
      // Get data display values
      var range = ss.getRange('A:Z');
      // Get index of "Referral Date" in headers
      var headers = range.getValues()[0];
      var columnIndex = headers.indexOf("Referral Date")+1;
      // Get today's date
      var presentDay = new Date();
      // Loop through the dates column
      for(var i=1;i<=range.getNumRows();i++){
        // Get the value to compare to today 
        var rowDate = new Date(range.getValues()[i+1][columnIndex]);
        if(rowDate.valueOf()>presentDay.valueOf()){
          SpreadsheetApp.getUi().alert("Future Date Referral");
        }
      }
    }
    

    进一步阅读:

    【讨论】:

    • 我是脚本初学者,我试过了,但不知道有什么问题,不管日期如何,它都会弹出窗口,如果日期大于当前日期,我希望脚本停止运行....我有质疑我的代码
    • 我有一个介于两者之间的自动化过程,如果日期在推荐日期列大于当前日期,如果未运行则抛出一个弹出窗口继续自动化
    • 我通常建议对代码进行注释,特别是如果您是初学者。它有助于构建您的程序并将其分解为简单的步骤。
    • 感谢您提供详细的代码,我肯定会从现在开始...在您提供的代码中valuesfor(var i=1;i&lt;=values.getNumRows();i++) 中未定义,我尝试了for(var i=1;i&lt;=headers.length;i++),但我再次认为我错了,应该怎么办成为values
    • 它应该是range.getNumRows() 而不是值。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-05-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多