【发布时间】:2014-02-27 18:11:06
【问题描述】:
所以我是脚本新手,还在努力学习,所以要温柔。 我已经阅读了论坛和一些帖子,正在寻找答案,但我无法完全解决。
我想查看工作表中的时间戳日期是否来自 X 天前、x 天内的任何时间,并在其他日子几乎从今天到大约 31 天后执行此操作。 我之前有一个脚本,它会在哪里找到它是否早于某个日期。但我认为我的 equal 的原因不是在数据中找到匹配项,因为它正在寻找确切的日期和 时间。不仅仅是约会。
我尝试过使用 getDate,但例如,如果我现在确实得到了日期。我得到 4,我减去 7,7 天前,我得到 -3。所以这种方法不好。到目前为止,这是我的代码,但其中很多是我在玩并尝试计算日期等(只是想我会发布到目前为止的工作,所以你可以看到我已经尝试过)。
function snapshot() {
var dateColumn = 2;
var findColumn = 4;
var toFind = "Yes - Complete (going ahead)";
var daysWorth = 16;
// var daysWorth1 = 17;
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName('Form Responses');
var values = sheet.getDataRange().getValues();
var valuesLength = values.length;
Logger.log("1) "+valuesLength);
var today = new Date().getTime();
var gap = new Date(today - daysWorth*24*60*60*1000);
Logger.log("2) today " +today);
// Logger.log("gap " +gap);
// Logger.log("today " +today.getTime());
// Logger.log("gap " +gap.getTime());
// Logger.log ("gap in milli " + daysWorth*24*60*60*1000 - daysWorth1*24*60*60*1000);
// Logger.log ("gap in milli " + daysWorth1*24*60*60*1000);
var test = today / 1*24*60*60*1000;
var counter = 1;
var completed = 0;
var attempted = 0;
Logger.log("3) "+values[counter][dateColumn - 1].getDate());
Logger.log("4) "+today);
Logger.log("4a) A day "+1*24*60*60*1000);
Logger.log("4b) "+ test);
while (counter < valuesLength){
if (values[counter][dateColumn - 1].getDate() == today && values[counter][findColumn - 1] == toFind)
{completed++;}
if (values[counter][dateColumn - 1].getDate() == today && values[counter][findColumn - 1] != toFind)
{attempted++;}
counter++
Logger.log("5) "+completed);
Logger.log("6) "+attempted);
}
}
感谢阅读:)
【问题讨论】:
标签: javascript date google-apps-script timestamp google-sheets