【发布时间】:2017-08-21 21:38:29
【问题描述】:
我有一些代码可以从 Google 表格中检索数据。然后,我循环遍历这些数据以获取仅等于今天日期的日期。然后我想将这些值放入另一张表中。我可能不明白 2D 数组究竟是如何工作的……以下是我目前所拥有的。我知道我的循环只查找今天的条目是有效的。不知道我做错了什么。任何帮助将不胜感激。 n 变量返回应该在数组中的正确行数。但是,行数和列数不正确。我正在从中读取数据的工作表有 4 列。不过我只需要其中的 3 个。
var ss = SpreadsheetApp.getActive();
var sheet = ss.getSheetByName('Edit Info');
var rows = sheet.getDataRange();
var values = rows.getValues();
Logger.log(values.length)
Logger.log(values[0].length)
var todayValues = [];
var todValues = "";
var rowValues = [];
var today = new Date();
var dd = today.getDate();
var mm = today.getMonth()+1; //January is 0!
var yyyy = today.getFullYear();
if(dd<10) {
dd = '0'+dd
}
if(mm<10) {
mm = '0'+mm
}
today = mm + "/" + dd + "/" + yyyy;
Logger.log("Today: " + today)
var n = 1;
for(var i = 1; i < values.length; i++) {
var formattedDate = values[i][0];
var newDate = Utilities.formatDate(new Date(formattedDate), "GMT-6",
"MM/dd/yyyy");
//Logger.log("NewDate: "+newDate)
if(newDate == today){
//todValues += values[j][0] + "," + values[i][3] + "," + values[i][2];
todayValues.push(values[i][0], values[i][3], values[i][2]);
n = n + 1
Logger.log(values[i][0] + ", " + values[i][3] + ", " + values[i][2])
}
}
Logger.log("N Row Count: " + n) //How many times the date was actually
found
Logger.log("Rows: " + todayValues.length)
Logger.log ("Columns: " + todayValues[0].length)
【问题讨论】:
标签: javascript arrays google-apps-script