2016-12-01 17 views
0

他のシートから特定の欄を足したこの機能を持っています。Googleシートスクリプト

function FindEffort(sheetNames,columnName) { 
    var ss = SpreadsheetApp.getActiveSpreadsheet(); 
    var sheets=sheetNames.split(','); 
    var sum=0; 
    for(var s=0;s<sheets.length;s++){ 
    var sheet=ss.getSheetByName(sheets[s]); 
    var data = sheet.getDataRange().getValues(); 
    var col = data[0].indexOf(columnName); 
    if (col != -1) { 
    for (var r=1; r<data.length; r++) { 
     var row = data[r]; 
     if(row!=undefined){ 
     if(row[col]!=null); 
     sum+=Number(row[col]); 
     } 
    } 
    } 
    } 

    return sum; 
} 

私は合計はで私の式を得ることだシート2の列の値を追加した場合のみ、最初のtime.For例をロード2.Butデータをシート1で、この関数を呼び出すと、シートから列の合計を取得していますシート1.変更を反映していません。

答えて

0

シート2の列が更新されるときにシート1のセル値を更新するonEditトリガーを記述する必要があります。

+0

私はonEdit()トリガで何を書くべきですか?空白の関数ですか? –

関連する問題