2017-08-01 40 views
0

在我的谷歌的腳本,我嘗試從紙上覆印一些行,與數據狀態到另一個工作表谷歌的腳本,從一個工作表複製一行到另一個條件及日期

我有日期的問題從片獲得

我試過如下:。

var date_check = new Date(data[i][4]); 

其中[i]爲索引,4列,其中日期是(日誌告訴我,只是相對數量,所以我試圖從該號碼創建新的日期,但只生成一個NaN變量。

這是所有的代碼

function copy() { 


var ss = SpreadsheetApp.getActiveSpreadsheet(); 
    var sheet1 = ss.getSheetByName('ISCRITTI'); 
    var sheet2 = ss.getSheetByName('2012'); 
var todayDate = new Date('1/1/2012'); 
    var data = sheet1.getRange(2,1, sheet1.getLastRow(), sheet1.getLastColumn()).getValues(); 

    var dest = []; 
    for (var i = 0; i < data.length; i++) { 
    Logger.log(data[i][4]);// return a number not the date in the sheets 
    var date_check = new Date(data[i][4]); 
    Logger.log(date_check); // return NaN 
    Logger.log(todayDate.getFullYear()); //return 2012.0 
    if (todayDate.getFullYear()===date_check.getFullYear()) { 
    dest.push(data[i]); 
    } 
    } // here is the end of the for loop 



    if (dest.length > 0) { 
    sheet2.getRange(sheet2.getLastRow()+1,1,dest.length,dest[0].length).setValues(dest); 
    } 
} 

我丟失了怎麼辦?感謝您的時間

回答

0

它爲我工作。我修改它在我的環境中工作,我拿出所有的日期檢查的東西,並使用getDataRange。

function copy() 
{ 
    var ss = SpreadsheetApp.getActiveSpreadsheet(); 
    var sheet1 = ss.getActiveSheet(); 
    var data = sheet1.getDataRange().getValues(); 
    var dest = []; 
    for (var i = 0; i < data.length; i++) 
    { 
    dest.push(data[i]); 
    } 
    sheet1.getRange(sheet1.getLastRow()+1,1,dest.length,dest[0].length).setValues(dest); 
} 
相關問題