2014-01-14 25 views
0

下面的谷歌Apps腳本是爲了執行這個邏輯的電子表格中的每一行:如果B1 =空如何通過腳本使A1 =空?

If (column B is empty) 
    Then: set column A empty 

這裏是不工作的代碼,我到目前爲止有:

var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Sheet1'); 
     var colS = sheet.getRange(1, 2, sheet.getLastRow()-1, 1).getValues(); // col2 row1  
var ColD = sheet.getRange(1, 1, sheet.getLastRow()-1, 1).getValues(); // col1 row 1 targeted to delete 


    for (var i = 0; i < columnS.length; i++) 
    if (colS[i][0] == '') 
     { 
     var aa = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Sheet1').setActiveSelection(colD[i]); 
     aa.clear({ formatOnly: true, contentsOnly: true }); 
     } 
    else 
     { 
     return 
     } 
    } 

什麼是錯的它?

回答

2

嘗試代碼波紋管:

function resetValues() { 
    var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Sheet1');  
    var colS = sheet.getRange(1, 2, sheet.getLastRow()-1, 1).getValues(); // col2 row1  

    for (var i = 1; i < colS.length; i++) { 
    if (colS[i-1][0] == '') {  
     sheet.getRange(i, 1).setValue("");  
    }  
    } 
} 

也許你的代碼是不工作的原因是:

  1. 如果不匹配你的for循環打破的,如果條件。
  2. columnS是一個未定義的變量。

我的代碼的現場版可以找到here

+0

太完美了!你已經感謝我了! :-) – Zils

+0

還有一個查詢,如果colK需要刪除,我應該使用 if(colS [i + 9] [0] =='')?? – Zils

+0

是否要刪除colK colK將是您的條件? –