2014-02-20 29 views
0

我一直在尋找腳本和東西來查找,但是,似乎谷歌API已被改變太多,或者我笨拙,不知道如何執行舊腳本和讓他們工作。谷歌腳本,忽略循環 - 電子表格

我不斷收到這些錯誤解析錯誤... Yahoew這有助於很多。不知道什麼線路。所以我做了我自己的。

function amountOfColors(color, range){ 
var ss = SpreadsheetApp.getActiveSpreadsheet(); 
var orgColor = ss.getRange(color).getBackground(); 
var range = ss.getRange(range); 

var x = 0; 
Logger.log("I was here before the loop."); 
for (var i; i < range.getNumRows(); i++) { 
Logger.log("Entered Row loop"); 
for (var j; j < range.getNumColumns(); j++) { 
    Logger.log("Entered Columns loop"); 
    var curCell = range.getCell(i, j); 
    Logger.log("curCell is : " & curCell); 
    if(curCell.getBackground() == orgColor) { 
    Logger.log("curCell color is : " & curCell.getBackground()); 
    x++; 
    } 
} 
} 
Logger.log("END"); 
return x; 
}; 

正如你所看到的,我幾乎使它記錄每一件事情。然而這就是它在日誌文件中返回的結果:

[14-02-20 04:00:53:445 CET] I was here before the loop. 
[14-02-20 04:00:53:445 CET] END 

甚至沒有碰到我的循環?

所有我想要這個腳本是從原始位置採取一種顏色,然後找到有多少單元格具有該顏色並將其返回。真的很簡單的腳本。

希望有人能啓發我這一個。我試圖從腳本庫中安裝類似的腳本,但它們也會返回錯誤。

這裏有一個設置的圖片:

http://b.imgdrp.com/PCoT.PNG - 我知道這說B33:B35,但即便是這是行不通的。

+0

確定我和j = 1後我就可以通過循環,我也編輯過電子表格語句爲「= amountOfColors(」A35「;」A33:A35「),但現在它似乎沒有通過我的如果聲明OO 甚至嘗試將orgColor設置爲currentColor它的檢查,並嘗試通過一個if語句的方式,但仍然nope。 – user3330867

+0

找到我的答案,但我不能添加它之前已經走了8個小時,由於沒有10個代表 – user3330867

+0

幹得好,很高興你找到了答案,代碼是google-apps-script,這也是更多的代碼審查問題,所以不適合使用stackoverflow。 – eddyparkinson

回答

0

添加我自己的答案,以防有人遇到類似問題。

function amountOfColors(color, range){ 
    var ss = SpreadsheetApp.getActiveSpreadsheet(); 
    var sheet = ss.getSheets()[0] 
    var orgColor = sheet.getRange(color).getBackground(); 
    var range = sheet.getRange(range); 

    var x = 0; 

    for (var i = 1; i <= range.getNumRows(); i++) { 
    for (var j = 1; j <= range.getNumColumns(); j++) { 
     var curCellColor = range.getCell(i,j).getBackground(); 
     if(curCellColor == orgColor) 
     x++; 
    } 
    } 
    return x; 
}; 

除了這個,我改變我打電話給我的函數的方式:的

代替:

=amountOfColors("A35", "A33:A35") 

你需要使用:

=amountOfColors("A35"; "A33:A35") 

正如你可以看到半 - 而不是逗號。

我很抱歉張貼和修復它如此之快,似乎我需要的只是一個多加一小時才能狡猾。至少希望有人能從中獲益。 如果有任何關於代碼的問題可以隨意添加評論,我會盡力解釋。 最好的問候Qvintus。