2014-07-02 59 views
3

我試圖parseInt函數,但我真的不知道在哪裏把它的代碼在正確的地方:getRange:無法轉換楠

下面的代碼:

function projectTime(QuelProjet) { 
    var tabUsers = getUsersList(); 
    var ss = SpreadsheetApp.getActive(); 
    var ProjectSheet = ss.getSheetByName("Liste Projets"); 
    for (i = 1; i < 13; i++) { 
     //Nombre de jours du mois 
     var date = new Date(i + "/01/" + year); 
     var numProjects = getProjectNumber(); 
     var currentMonthSheet = getSheetByMonth(tabMonth[i - 1]); 
     for (l = 0; l < tabUsers.length; l++) { 
      var firstLine = 1 + (l + 1) * 10 - 10 + (l + 1) * numProjects - numProjects; 
      Logger.log("Fline " + l + " : " + firstLine); 

      var QuelPro = parseInt(QuelProjet); 
      Logger.log("Quelpro : " + QuelPro); 

      var nbDays = getNbJours(date); 

      var sommeproject = 0; 
      var som1 = new Array(1000); 
      for (k = 1; k < nbDays + 1; k++) { 
       var Row = parseInt(firstLine + QuelPro); 

       Logger.log("Row : " + Row + " QuelProjet : " + QuelPro); 
       var Column = k + 1; 
       Logger.log("Column : " + Column); 
       var range = currentMonthSheet.getRange(Row, Column); 
       som1[k] = range.getValues(); 
       //sommeproject = sommeproject + currentMonthSheet.getRange(firstLine + QuelProjet, k + 1).getValues(); 
      } 
     } 
    } 
    var sommeproject = 1; 
    sommeproject = sommeproject + som1; 
    return sommeproject; 
} 

的問題是,在這條線:

var range = currentMonthSheet.getRange(Row, Column); 

QuelProjet的是,我把喜歡的一個整數FUNC一個說法重刑*當我把它在電子表格中

感謝您的時間

+0

什麼呢'getProjectNumber() '回來? – Jonathon

回答

0

如果錯誤是不能轉換的NaN上課,這意味着任何一個變量的行或列或兩者不是整數。你的問題來自Row不是一個整數。

因爲我不知道是什麼getProjectNumber(),我不能完全調試,但這種方法應該讓你的調試。

用途:Logger.log(typeof運算(變量名)),這樣就可以找出其中的問題。 在定義它們之後記錄下列變量的類型:numProjects,firstLine,quelPro和row。 記錄器應該每次記錄'數字'。當它沒有發現你的錯誤。

如果所有的結果都是「數字」它可能是你的數字不是whoel數字,因爲我不知道什麼getProjectNumber()返回時,和getRange()函數需要整數

相關問題