2015-02-07 23 views
1

如何將我的變量「範圍」更改爲輸入電子表格而不是「A2:Z2」的最後一行數據?如何將範圍設置爲電子表格中數據的最後一行?使用Google Apps腳本

function findFault() { 
    var ss = SpreadsheetApp.getActiveSpreadsheet(); 
    var sheet = ss.getSheetByName("Inspections"); 

    //Set the range to be search through 
    var range = sheet.getRange('A2:Z2'); 

    //Turn the range into data values 
    var data = range.getValues(); 

    //Declare fault and the value to search for 
    var fault = "Fault"; 

    //Iterate through data to find fault 
    for (var i = 0; i < data.length; i++) { 
    for (var j = 0; j < data[i].length; j++) { 
     if (data[i][j] == fault) { 

     //log to test if working 
     Logger.log("Found Fault"); 
     } 
    } 
    } 
} 
+0

你想搜索每一個單元格嗎?不只是一列,或找到特定的行? – 2015-02-07 19:00:46

回答

1

我更新了我的代碼,並得到它的工作。如果任何人有提示使其更有效,請發佈。

function findFault() { 
    var ss = SpreadsheetApp.getActiveSpreadsheet(); 
    var sheet = ss.getSheetByName("Inspections"); 

    //Get the last row if data 
    var lastRowNumber = sheet.getDataRange().getNumRows(); 
    var allColumns = sheet.getDataRange().getNumColumns(); 

    //Set the range to be search through 
    var range = sheet.getRange(lastRowNumber, 1, 1, allColumns); 

    //Turn the range into data values 
    var data = range.getValues(); 

    //Declare fault and the value to search for 
    var fault = "Fault"; 


    //Iterate through data to dinf fault 
    for (var i = 0; i < data.length; i++) { 
    for (var j = 0; j < data[i].length; j++) { 
     if (data[i][j] == fault) { 

     //log to test if working 
     Logger.log("Found Fault"); 
     } 
    } 
    } 
} 
+0

'var range = sheet.getDataRange()' – Jonathon 2015-02-08 11:33:31

相關問題