2017-04-18 112 views
1

我試圖創建一個簡單的腳本,首先檢查(從第3列開始的第3行中的所有單元格)是否包含與可用工作表不同的名稱,如果是,則創建一個新腳本。如果沒有去下一個單元格。最好直到排空,但我沒有得到那麼多。目前,我有JS/GS簡單的Google表格腳本

var row = 3; //Global Variable 
 
function Main() { // Main Function 
 
    Activate(); 
 
    GetNames(); 
 
} 
 
function Activate() { // Initialize 
 
    var get = SpreadsheetApp.getActiveSpreadsheet(); 
 
    var import = get.getSheetByName("Import"); 
 
} 
 
function GetNames() { // Get Names and check for existing Sheets 
 
    var ss = SpreadsheetApp.getActiveSpreadsheet(); 
 
    var import = ss.getSheetByName("Import"); 
 
    var sheet = ss.getSheets()[0]; 
 
    for (i = 0; i < 1000; i++) { // Loop which I think is broken 
 
     var names = import.getRange(row,3).getValue(); 
 
     if (import.getSheetByName(names) == null) { 
 
      import.insertSheet(names); 
 
      import.activate(); 
 
     } 
 
     row + 1; 
 
    } 
 
}

這裏是數據

enter image description here

它成功添加的第一片,但未能繼續循環,我認爲。 正如你可能會看到我對此很新,任何幫助將不勝感激。

回答

0

你可能希望通過1這裏增加row

row + 1; 

但你不會。 row + 1只是一個表達式與值(4,在您的示例中,因爲行始終保持3)。什麼,你需要的是聲明

row = row + 1; 

但是,如果這是你使用全局變量row所有,你不需要它。只需使用循環變量i即可從0到1000計數。您可能需要類似import.getRange(i+3,3)之類的內容。

+0

這樣做絕對非常感謝你。同時感謝您對i變量的進一步細節! – D3sert