Javascript 脚本在循环中被捕获了3-5次,然后停止

Javascript 脚本在循环中被捕获了3-5次,然后停止,javascript,google-apps-script,Javascript,Google Apps Script,我正在为我的项目编写应用程序脚本。我对所有编程语言都很陌生。我遇到了一个特定代码段的问题,它在循环中运行了3-5次,然后自行停止。整个代码是 var EMAIL_SENT = "EMAIL_SENT"; function Test() { autofill(); replace(); var sheet = SpreadsheetApp.getActiveSheet(); var startRow = 2; var numRows = sheet.get

我正在为我的项目编写应用程序脚本。我对所有编程语言都很陌生。我遇到了一个特定代码段的问题,它在循环中运行了3-5次,然后自行停止。整个代码是

var EMAIL_SENT = "EMAIL_SENT";

function Test() {
    autofill();
    replace();
    var sheet = SpreadsheetApp.getActiveSheet();
    var startRow = 2;
    var numRows = sheet.getLastRow() - 1;
    var lastColumn = sheet.getLastColumn();
    var dataRange = sheet.getRange(startRow, 1, numRows, lastColumn)
    var data = dataRange.getValues();
    for (var i = 0; i < data.length; ++i) {
        var row = data[i];

        var lastRow = sheet.getLastRow();
        var service = sheet.getRange(lastRow, 11).getValue();
        if (service === 0) {
            filterBTC();
            codeBTC();
        } else {
            var spreadsheet = SpreadsheetApp.getActive();
            spreadsheet.getRange('K1').activate();
            var criteria = SpreadsheetApp.newFilterCriteria()
                .setHiddenValues(['0'])
                .build();
            spreadsheet.getActiveSheet().getFilter().setColumnFilterCriteria(11, criteria);
            spreadsheet.getRange('B1').activate();
            spreadsheet.getActiveSheet().getFilter().sort(2, true);
            spreadsheet.getRange('B3').activate();
            spreadsheet.getActiveRange().autoFill(spreadsheet.getRange('B3:B561'),
                SpreadsheetApp.AutoFillSeries.ALTERNATE_SERIES);
            spreadsheet.getRange('B3:B561').activate();
            SendOrder();
            removefilters();
        }
    }
}
请帮忙,我已经努力完成这个项目快一个星期了。
谢谢大家!

如果您是一名非常新的程序员,您首先应该学习的是如何调试代码和分步运行脚本,并了解每个变量/对象如何变化,而不是生成数千条日志

您是否尝试过在循环的第一行
console.log(data.length)
中添加这一行。然后在控制台中检查返回的值。脚本的目标是什么?看起来您正在填充,然后查看结果……是否应该使用脚本本身进行操作?任何上下文都有助于提供答案。
var spreadsheet = SpreadsheetApp.getActive();
spreadsheet.getRange('K1').activate();
var criteria = SpreadsheetApp.newFilterCriteria()
    .setHiddenValues(['0'])
    .build();
spreadsheet.getActiveSheet().getFilter().setColumnFilterCriteria(11, criteria);
spreadsheet.getRange('B1').activate();
spreadsheet.getActiveSheet().getFilter().sort(2, true);
spreadsheet.getRange('B3').activate();
spreadsheet.getActiveRange().autoFill(spreadsheet.getRange('B3:B561'),
    SpreadsheetApp.AutoFillSeries.ALTERNATE_SERIES);
spreadsheet.getRange('B3:B561').activate();
SendOrder();
removefilters();