2016-12-19 25 views
0

セル値に基づいて指定したシートタブ内の行を非表示にする2つのスクリプトが動作するようになりました。私が実行している問題は、別々のユースケースで両方を動作させるのではなく、どちらか一方しか使用できないように見えるということです。Googleスプレッドシートスクリプト:一度に2つずつ使用する

オンラインで見ると、複数のスクリプトが同じシート上にある限り動作するはずですが、これについてはわかりません。それらを同じシートに入れた後、私はどちらか一方が動作するのと同じ状況に陥っています。

以下は私が使用しているスクリプトです。実行するスクリプトの両方が含まれています。 Googleスプレッドシート内で複数のスクリプトを使用することはできますか?

function onEdit(e) { 
var ss = SpreadsheetApp.getActiveSpreadsheet(); 
var s = ss.getSheetByName("TX MD 2017");   
    var row = s.getRange('C2').getValues();       
s.showRows(1); 
for(var i=0; i< row.length; i++){ if(row[i] == 'hide') 
    { s.hideRows(5); 
     s.hideRows(7); 
     s.hideRows(9);} 

    else if(row[i] == 'unhide'){ s.unhideRow(ss.getDataRange()); } 
}  

s = ss.getSheetByName("DC MD 2017");   
row = s.getRange('C2').getValues();       

s.showRows(1); 
for(var i=0; i< row.length; i++){ if(row[i] == 'hide') 
    { s.hideRows(6); 
     s.hideRows(9); 
     s.hideRows(12);}       
    else if(row[i] == 'unhide'){ s.unhideRow(ss.getDataRange()); } 
          }} 

答えて

1

onEdit関数は、onEdit関数に組み込まれています。一つの関数にこれを組み合わせて、あなたは良いことがあります:

function onEdit(e) { 
var ss = SpreadsheetApp.getActiveSpreadsheet(); 
var s = ss.getSheetByName("TX MD 2017");   
var row = s.getRange('C2').getValues();       
s.showRows(1); 
for(var i=0; i< row.length; i++){ 
    if(row[i] == 'hide') { 
    s.hideRows(1); 
    s.hideRows(2); 
    s.hideRows(6); 
    s.hideRows(4); 
    s.hideRows(9); 
    }       
else if(row[i] == 'unhide'){ 
    s.unhideRow(ss.getDataRange()); 
} 
} 

//Second section for specified tab 2 

s = ss.getSheetByName("DC MD 2017"); 
row = s.getRange('C2').getValues();       

s.showRows(1); 
for(var i=0; i< row.length; i++){ 
    if(row[i] == 'hide') { 
    s.hideRows(1); 
    s.hideRows(2); 
    s.hideRows(12); 
    s.hideRows(11); 
    s.hideRows(13); 
} 
    else if(row[i] == 'unhide'){ 
     s.unhideRow(ss.getDataRange()); 
    } 
} 
} 

あなたは/非表示の行を再表示し、のonEdit内部から各タブのためにそれを呼び出すために呼び出すために、コードの共通部分のための関数を作成することができますあなたが別の行を隠しているのでそのままにしておいてください。

+0

これは機能しました。どうもありがとうございました。 – davecut85

関連する問題