javascript - 从 Google 电子表格中获取两个日期之间的数据

标签 javascript node.js google-apps-script google-sheets google-sheets-api

我正在尝试构建一个nodejs应用程序,该应用程序每周运行一次。它的工作是从上周到今天的 Google 电子表格中获取数据。基本上,我想获取上周添加的数据。

我相信这就是我必须使用的:https://developers.google.com/apps-script/reference/spreadsheet/spreadsheet 但如果有更好的东西,请告诉我。

我认为 SpreadSheet.getActiveSheet().getRange() 将返回一个包含所有数据的数组,但我不确定在哪里可以添加某种查询来按日期获取数据。

类似的东西

SpreadSheet.getActiveSheet().getRange(date > lastWeek && date < today)

有什么办法可以实现吗?

最佳答案

据我所知,无法知道何时添加行,因此您的范围不起作用。

我这样做的方法是在每行上保留添加时间的时间戳,并迭代所有数据以找到适合的值。 (您也可以将最后一行读取的内容保留在某个位置并从那里开始)。

var sheet = SpreadsheetApp.openById(id).getSheetByName(name)
var data = sheet.getDataRange().getValues();
for (var i = 0 ; i < data.length; i++){
  if (data[i][index_of_timestamp] < today &&  data[i][index_of_timestamp] > lastWeek){
    realData.push(data[i]);
  }
}

关于javascript - 从 Google 电子表格中获取两个日期之间的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46668704/

相关文章:

javascript - 如何使 Electron 在所有其他 Windows 之上的窗口中作为 Skype 的指示器

javascript - 如何使用 Angular Http 拦截器和 RxJS 刷新 JWT token ?

javascript - HTML 服务中对象引用丢失

javascript - 用于网络应用程序的 Google 应用程序脚本无法正常工作

javascript - Meteor 不输出 MongoDB 查询

javascript - 为什么 Fetch POST 请求后 RedirectToAction 不返回 new View()?

javascript - 如何在 node.js 中完成异步函数后运行函数?

google-apps-script - 如果单元格更改,则发送电子邮件通知

javascript - 如何使用过渡将 div 从当前位置向右移动?

javascript - 是否有一种适用于所有浏览器和所有地区的日期字符串格式?