2014-01-06 100 views
0

我試圖建立一個函數,它有一個for循環,並且當找到某些條件時,改變一行的顏色。但是當我嘗試下面的代碼時,出現錯誤:TypeError: Cannot find function getRowIndex in object Sheet.。因此,在這種情況下,假設我通過i變量獲得行位置,那麼如何使用i值,以我可以更改整行背景的方式在工作表中選擇相應的行?Google Apps腳本:如何通過索引獲取行?

var ss = SpreadsheetApp.getActiveSpreadsheet(); 
    var sourceSpreadsheetID = ss.getId(); 
    var oldSpreadsheet = SpreadsheetApp.openById(sourceSpreadsheetID); 
    var oldWorksheet = oldSpreadsheet.getSheetByName("students"); 
    var newData = newWorksheet.getDataRange().getValues(); 

// Iterates through the new sheet rows 
    for(i=1; i<newData.length; i++){ 
    var currentRow = oldWorksheet.getRowIndex(i); 
    currentRow.setBackgroundRGB(255, 222, 173).setNote("any note"); 
    } 
+0

我注意到您刪除了自己關於效率等問題,但我有一個答案准備,我想提供更好的性能(基於我用我自己的目的有一段時間回的解決方案) - 爲它的價值。 – AdamL

+0

嗨,@AdamL,我會在幾分鐘內再次發佈該問題!我認爲這是寫得不好。 – craftApprentice

回答

0

我建議您使用「Sheet」類型的getRange()函數來完成此操作。

var currentRow = oldWorksheet. getRange(i (specify the row here), column(Specify the number of columns here)) 
currentRow.setBackgroundRGB(255, 222, 173).setNote("any note"); 
相關問題