我遇到的问题是数组是否被填充。
电子表格29/09/2017
中设置了正确的日期
我认为这是因为文本不匹配。请参阅下面的代码:
正在设定日期:
// Format the date
var formattedDate = Utilities.formatDate(new Date(), "GMT", "dd/MM/yyyy");
var sendTheseEmail = [];
var sendTheseName = [];
var sendTheseLName = [];
var sendTheseBackup = [];
var sendTheseAdvocate = [];
for (var i = 1; i < 20; i++) {
function findSend() {
if(tsSheet.getRange("F" + i).getValue() == formattedDate){
sendTheseEmail.push(tsSheet.getRange("D" + i).getValue())
sendTheseName.push(tsSheet.getRange("A" + i).getValue())
sendTheseLName.push(tsSheet.getRange("B" + i).getValue())
sendTheseBackup.push(tsSheet.getRange("E" + i).getValue())
sendTheseAdvocate.push(tsSheet.getRange("G" + i).getValue())
日志显示:
日期
[17-09-29 03:05:31:426 PDT] 29/09/2017
然后数组记录:
[17-09-29 03:05:31:427 PDT] []
[17-09-29 03:05:31:427 PDT] []
[17-09-29 03:05:31:428 PDT] []
[17-09-29 03:05:31:428 PDT] []
[17-09-29 03:05:31:429 PDT] []
如果有人能提供帮助那就太好了!
答案 0 :(得分:1)
如果没有任何最小的可运行代码,很难回答,但我想如果你想比较日期,那么只需使用Utilities.formatDate
来格式化该单元格中的日期:
var formattedDate = Utilities.formatDate(new Date(), "GMT", "dd/MM/yyyy");
var sendTheseEmail = [];
var sendTheseName = [];
var sendTheseLName = [];
var sendTheseBackup = [];
var sendTheseAdvocate = [];
for (var i = 1; i < 20; i++) {
function findSend() {
// Format the cell value before comparision
if (Utilities.formatDate(new Date(tsSheet.getRange("F" + i).getValue()), "GMT", "dd/MM/yyyy") == formattedDate) {
sendTheseEmail.push(tsSheet.getRange("D" + i).getValue())
sendTheseName.push(tsSheet.getRange("A" + i).getValue())
sendTheseLName.push(tsSheet.getRange("B" + i).getValue())
sendTheseBackup.push(tsSheet.getRange("E" + i).getValue())
sendTheseAdvocate.push(tsSheet.getRange("G" + i).getValue())
}
}
}
&#13;
答案 1 :(得分:0)
是的,您需要完全匹配日期,因为它们被评估为字符串。