私はプロですが、私はこのスプレッドシート用のGoogle Scriptが必要です。私はパズルの断片を探してコードを作りました。最後には動作しますが、非常に遅いです。誰か助けてくれますか?私は、コードがどのように動作するかをスローモーションで見ることができます。 :-(スプレッドシート用のGoogleスクリプトは非常に遅い
スプレッドシートまたはシートには多くのエントリがありますが、一部の行は空白です(1000行以上)。フィルタ機能を使用すると、これらの行を非常に速く非表示にすることができます。私は私がスクリプト内のすべてのステップを組み合わせて、ボタンで使用できるようにすることができたと思っていましたが、空の行を隠している部分がありました。
スクリプトは、1または0があるかどうかをチェックします。0がある場合、行は非表示になります。スクリプトは7行目から1150まで開始します。私のコードがゴミであればスクリプトでフィルタ機能を有効にすることはできますか?
function hideRows() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
ss.setActiveSheet(ss.getSheetByName("Order"));
var sheet = SpreadsheetApp.getActiveSheet();
var column = 14;
var cell = 0;
var lastRow = SpreadsheetApp.getActiveSheet().getLastRow();
for (var row = 7; row < lastRow; row++) {
cell = sheet.getRange(row, column).getValues();
if (cell == 0){
sheet.hideRows(row);
}
else {
sheet.showRows(row);
}
}
}
配列内のすべての値を取得してから、一度に1つずつ値を取得するのではなく、ループ内で繰り返し処理する必要があります。それははるかに速くなります。 – Cooper