如何在脚本中将单元格(日期共振峰)中的值与今天的日期进行比较

时间:2019-09-27 00:19:05

标签: google-apps-script google-sheets

firstDate = SpreadsheetApp.getActiveSpreadsheet.getRange(1,5).getValue());
if (firstDate > Today()) {
spreadsheet.getRange('E2:E').activate();
    spreadsheet.getActiveRangeList().clear({contentsOnly: true, skipFilteredRows: true});
    spreadsheet.getRange('E1').activate();
    spreadsheet.getRange('F1').copyTo(spreadsheet.getActiveRange(), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
    spreadsheet.getRange('E2').activate();
    spreadsheet.getRange('F2:U32').moveTo(spreadsheet.getActiveRange());
}

方法不是这里的关键部分,我很难使IF语句起作用。我看了几个例子,这里的代码是其中一个例子,但没有一个对我有用。

1 个答案:

答案 0 :(得分:0)

首先,您需要将SpreadsheetApp.getActiveSpreadsheet更改为SpreadsheetApp.getActiveSpreadsheet(),因为.getActiveSpreadsheet()是一个函数。

根据单元格中日期的格式,您可以致电:

firstDate = SpreadsheetApp.getActiveSpreadsheet().getRange(1,5).getValue().getTime() 
var Today = new Date()
if (firstDate > Today.getTime(){
  //code
}

或者您可以在比较之前将值传递给新日期:

firstDate = new Date(SpreadsheetApp.getActiveSpreadsheet().getRange(1,5).getValue())
if (firstDate = Today()){
  //code
}