0

私は、行の数が100行を超えると、自動的にアプリケーションスクリプトを使用してGoogleスプレッドシートをクリアするコードを書いています。私はコードを起動するために1分トリガーを使用しました。行数が2000を超えても、コードはトリガーされません。私はデバッグを試みて、次のエラーを受け取りました:これらの行は範囲外です。 (行10、ファイル "コード")エラー

これらの行は範囲外です。 (10行目、ファイル「コード」)

var ss = SpreadsheetApp.getActiveSpreadsheet(); 
var sheet = ss.getSheets()[0]; 

// This logs the value in the very last cell of this sheet 
var lastRow = sheet.getLastRow(); 
function a() 
{ 
if(lastRow>=996) 
{ 
    sheet.deleteRows(3, lastRow-1); 
} 
} 
+0

あなたのコードは大丈夫です。手動でトリガーを設定しましたか? – iJay

答えて

0

あなたが行の合計数は、あなた1000あれば、行番号3
から行(LASTROW -1)の合計数を削除しようとしています行番号3から999行を削除しようとしています。そのため、エラーが発生しています。

は、次のコードを試してみてください。

function a() { 
    var ss = SpreadsheetApp.getActiveSpreadsheet(); 
    var sheet = ss.getSheets()[0]; 
    var lastRow = sheet.getMaxRows(); 
    if(lastRow>100) { 
    sheet.deleteRows(101, lastRow-100); 
    } 
}; 
関連する問題