2014-09-29 132 views
0

我想總結範圍值,但由於某些原因,它不是總結。任何想法爲什麼? 我不是在JavaScript很不錯,但我有一定的瞭解...總和範圍值

function bag(input) { 
    var sheet = SpreadsheetApp.getActiveSpreadsheet() 
    var AllValues = sheet.getRange(input).getValues(); 
    var FValue = ""; 
    var TotalGold = 0; 
    var TotalSilver = 0; 
    var TotalBronze = 0; 
    for(i = 0; i < AllValues.length; i++) { 
     var total = AllValues[i][0].split(" "); 

     for(i = 0; i < total.length; i++){ 
      if (total[i].indexOf("g") >= 0) { 
       var value = total[i].replace("g",""); 
       var gold = value * 1; 
       TotalGold = TotalGold + gold; 
      } 
      else if (total[i].indexOf("s") >= 0) { 
       var value = total[i].replace("s",""); 
       var silver = value * 1; 
       TotalSilver = TotalSilver + silver; 
      } 
      else if (total[i].indexOf("b") >= 0) { 
       var value = total[i].replace("b",""); 
       var bronze = value * 1; 
       TotalBronze = TotalBronze + bronze; 
      } 
      else { 
       return null; 
      } 
     } 
    } 
    return TotalGold + "g " + TotalSilver + "s " + TotalBronze + "b"; 
} 

回答

0

看樣子你是在嵌套迭代覆蓋你的i值。選另一個標識符。例如:for (var j = 0; j < total.length; j++) { ... }

+0

謝謝,它現在工作。我還有其他的事情要做,因爲如果在這個範圍內有任何一個強大的單元格,它就會恢復原狀。順便說一句,在我需要使用= bag(「c5:c8」)的例子中,我如何不需要「在formular中= bag(c5:c8)......謝謝 – user3801128 2014-09-29 22:01:01