Триггер должен срабатывать каждые 5 минут, но этого не происходит
Последовательность активаций не следует даже временной логике, как показано здесь:
Он активируется каждые 5 минут.
Скрипт, который я использую, очень прост:
function ProjetoNovasLigas() {
var ss = SpreadsheetApp.getActive();
ss.getRange('Página1!A2').setFormula('=TEXT(NOW(),"yyyy/mm/dd hh:mm")');
ss.getRange('Página1!A2').copyTo(ss.getRange('Página1!A2'), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
ss.getRange('Página1!K2:M').copyTo(ss.getRange('Página1!O2'), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
ss.getRange('Página1!D2:D').copyTo(ss.getRange('Página1!E2'), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
ss.getRange('Página1!K2:M').copyTo(ss.getRange('Página1!O2'), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
ss.getRange('Página1!D2:D').copyTo(ss.getRange('Página1!E2'), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
ss.getRange('Página1!K2:M').copyTo(ss.getRange('Página1!O2'), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
ss.getRange('Página1!D2:D').copyTo(ss.getRange('Página1!E2'), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
ss.getRange('Página1!K2:M').copyTo(ss.getRange('Página1!O2'), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
ss.getRange('Página1!D2:D').copyTo(ss.getRange('Página1!E2'), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
ss.getRange('Página1!K2:M').copyTo(ss.getRange('Página1!O2'), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
ss.getRange('Página1!D2:D').copyTo(ss.getRange('Página1!E2'), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
if (ss.getSheetByName('Página1').getRange("C2").getValues()[0][0]=="Limpar"){
ss.getRange('Página1!E2:E1000000').clear({contentsOnly: true, skipFilteredRows: true});
};
ss.getRange('Página1!V2:V1000000').clear({contentsOnly: true, skipFilteredRows: true});
ss.getRange('Página1!V2').setFormula('=IFERROR(FILTER(ARRAY_CONSTRAIN(UNIQUE(IFERROR(FILTER(FILTER(Q2:Q,ISNA(MATCH(Q2:Q, S2:S, 0)),VALUE(TEXT(O2:O&" "&P2:P,"yyyy/mm/dd hh:mm"))<=VALUE(TEXT(A2,"yyyy/mm/dd hh:mm"))+"1:00"),ISNA(MATCH(RIGHT(REGEXEXTRACT(FILTER(Q2:Q,ISNA(MATCH(Q2:Q, S2:S, 0)),VALUE(TEXT(O2:O&" "&P2:P,"yyyy/mm/dd hh:mm"))<=VALUE(TEXT(A2,"yyyy/mm/dd hh:mm"))+"1:00"),REGEXREPLACE(FILTER(Q2:Q,ISNA(MATCH(Q2:Q, S2:S, 0)),VALUE(TEXT(O2:O&" "&P2:P,"yyyy/mm/dd hh:mm"))<=VALUE(TEXT(A2,"yyyy/mm/dd hh:mm"))+"1:00"),"(https?:\\/\\/([\\w.-]+\\/){7})","($1)")),LEN(REGEXEXTRACT(FILTER(Q2:Q,ISNA(MATCH(Q2:Q, S2:S, 0)),VALUE(TEXT(O2:O&" "&P2:P,"yyyy/mm/dd hh:mm"))<=VALUE(TEXT(A2,"yyyy/mm/dd hh:mm"))+"1:00"),REGEXREPLACE(FILTER(Q2:Q,ISNA(MATCH(Q2:Q, S2:S, 0)),VALUE(TEXT(O2:O&" "&P2:P,"yyyy/mm/dd hh:mm"))<=VALUE(TEXT(A2,"yyyy/mm/dd hh:mm"))+"1:00"),"(https?:\\/\\/([\\w.-]+\\/){7})","($1)")))-44),Sheet2!D:D, 0))))),300,1),ISNA(MATCH(ARRAY_CONSTRAIN(FILTER(Q2:Q,ISNA(MATCH(Q2:Q, S2:S, 0)),VALUE(TEXT(O2:O&" "&P2:P,"yyyy/mm/dd hh:mm"))<=VALUE(TEXT(A2,"yyyy/mm/dd hh:mm"))+"1:00"),300,1), X:X, 0)))\n)');
ss.getRange('Página1!V2:V').copyTo(ss.getRange('Página1!V2'), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
ss.getRange('Página1!U2:U').copyTo(ss.getRange('Página1!S2'), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
ss.getRange('Página1!W2:W').copyTo(ss.getRange('Página1!X2'), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
ss.getRange('Página1!V2:V1000000').clear({contentsOnly: true, skipFilteredRows: true});
ss.getRange('Página1!V2').setFormula('=IFERROR(FILTER(ARRAY_CONSTRAIN(UNIQUE(IFERROR(FILTER(FILTER(Q2:Q,ISNA(MATCH(Q2:Q, S2:S, 0)),VALUE(TEXT(O2:O&" "&P2:P,"yyyy/mm/dd hh:mm"))<=VALUE(TEXT(A2,"yyyy/mm/dd hh:mm"))+"1:00"),ISNA(MATCH(RIGHT(REGEXEXTRACT(FILTER(Q2:Q,ISNA(MATCH(Q2:Q, S2:S, 0)),VALUE(TEXT(O2:O&" "&P2:P,"yyyy/mm/dd hh:mm"))<=VALUE(TEXT(A2,"yyyy/mm/dd hh:mm"))+"1:00"),REGEXREPLACE(FILTER(Q2:Q,ISNA(MATCH(Q2:Q, S2:S, 0)),VALUE(TEXT(O2:O&" "&P2:P,"yyyy/mm/dd hh:mm"))<=VALUE(TEXT(A2,"yyyy/mm/dd hh:mm"))+"1:00"),"(https?:\\/\\/([\\w.-]+\\/){7})","($1)")),LEN(REGEXEXTRACT(FILTER(Q2:Q,ISNA(MATCH(Q2:Q, S2:S, 0)),VALUE(TEXT(O2:O&" "&P2:P,"yyyy/mm/dd hh:mm"))<=VALUE(TEXT(A2,"yyyy/mm/dd hh:mm"))+"1:00"),REGEXREPLACE(FILTER(Q2:Q,ISNA(MATCH(Q2:Q, S2:S, 0)),VALUE(TEXT(O2:O&" "&P2:P,"yyyy/mm/dd hh:mm"))<=VALUE(TEXT(A2,"yyyy/mm/dd hh:mm"))+"1:00"),"(https?:\\/\\/([\\w.-]+\\/){7})","($1)")))-44),Sheet2!D:D, 0))))),300,1),ISNA(MATCH(ARRAY_CONSTRAIN(FILTER(Q2:Q,ISNA(MATCH(Q2:Q, S2:S, 0)),VALUE(TEXT(O2:O&" "&P2:P,"yyyy/mm/dd hh:mm"))<=VALUE(TEXT(A2,"yyyy/mm/dd hh:mm"))+"1:00"),300,1), X:X, 0)))\n)');
ss.getRange('Página1!V2:V').copyTo(ss.getRange('Página1!V2'), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
ss.getRange('Página1!U2:U').copyTo(ss.getRange('Página1!S2'), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
ss.getRange('Página1!W2:W').copyTo(ss.getRange('Página1!X2'), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
ss.getRange('Página1!V2:V1000000').clear({contentsOnly: true, skipFilteredRows: true});
ss.getRange('Página1!V2').setFormula('=IFERROR(FILTER(ARRAY_CONSTRAIN(UNIQUE(IFERROR(FILTER(FILTER(Q2:Q,ISNA(MATCH(Q2:Q, S2:S, 0)),VALUE(TEXT(O2:O&" "&P2:P,"yyyy/mm/dd hh:mm"))<=VALUE(TEXT(A2,"yyyy/mm/dd hh:mm"))+"1:00"),ISNA(MATCH(RIGHT(REGEXEXTRACT(FILTER(Q2:Q,ISNA(MATCH(Q2:Q, S2:S, 0)),VALUE(TEXT(O2:O&" "&P2:P,"yyyy/mm/dd hh:mm"))<=VALUE(TEXT(A2,"yyyy/mm/dd hh:mm"))+"1:00"),REGEXREPLACE(FILTER(Q2:Q,ISNA(MATCH(Q2:Q, S2:S, 0)),VALUE(TEXT(O2:O&" "&P2:P,"yyyy/mm/dd hh:mm"))<=VALUE(TEXT(A2,"yyyy/mm/dd hh:mm"))+"1:00"),"(https?:\\/\\/([\\w.-]+\\/){7})","($1)")),LEN(REGEXEXTRACT(FILTER(Q2:Q,ISNA(MATCH(Q2:Q, S2:S, 0)),VALUE(TEXT(O2:O&" "&P2:P,"yyyy/mm/dd hh:mm"))<=VALUE(TEXT(A2,"yyyy/mm/dd hh:mm"))+"1:00"),REGEXREPLACE(FILTER(Q2:Q,ISNA(MATCH(Q2:Q, S2:S, 0)),VALUE(TEXT(O2:O&" "&P2:P,"yyyy/mm/dd hh:mm"))<=VALUE(TEXT(A2,"yyyy/mm/dd hh:mm"))+"1:00"),"(https?:\\/\\/([\\w.-]+\\/){7})","($1)")))-44),Sheet2!D:D, 0))))),300,1),ISNA(MATCH(ARRAY_CONSTRAIN(FILTER(Q2:Q,ISNA(MATCH(Q2:Q, S2:S, 0)),VALUE(TEXT(O2:O&" "&P2:P,"yyyy/mm/dd hh:mm"))<=VALUE(TEXT(A2,"yyyy/mm/dd hh:mm"))+"1:00"),300,1), X:X, 0)))\n)');
ss.getRange('Página1!V2:V').copyTo(ss.getRange('Página1!V2'), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
ss.getRange('Página1!U2:U').copyTo(ss.getRange('Página1!S2'), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
ss.getRange('Página1!W2:W').copyTo(ss.getRange('Página1!X2'), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
ss.getRange('Página1!V2:V1000000').clear({contentsOnly: true, skipFilteredRows: true});
ss.getRange('Página1!V2').setFormula('=IFERROR(FILTER(ARRAY_CONSTRAIN(UNIQUE(IFERROR(FILTER(FILTER(Q2:Q,ISNA(MATCH(Q2:Q, S2:S, 0)),VALUE(TEXT(O2:O&" "&P2:P,"yyyy/mm/dd hh:mm"))<=VALUE(TEXT(A2,"yyyy/mm/dd hh:mm"))+"1:00"),ISNA(MATCH(RIGHT(REGEXEXTRACT(FILTER(Q2:Q,ISNA(MATCH(Q2:Q, S2:S, 0)),VALUE(TEXT(O2:O&" "&P2:P,"yyyy/mm/dd hh:mm"))<=VALUE(TEXT(A2,"yyyy/mm/dd hh:mm"))+"1:00"),REGEXREPLACE(FILTER(Q2:Q,ISNA(MATCH(Q2:Q, S2:S, 0)),VALUE(TEXT(O2:O&" "&P2:P,"yyyy/mm/dd hh:mm"))<=VALUE(TEXT(A2,"yyyy/mm/dd hh:mm"))+"1:00"),"(https?:\\/\\/([\\w.-]+\\/){7})","($1)")),LEN(REGEXEXTRACT(FILTER(Q2:Q,ISNA(MATCH(Q2:Q, S2:S, 0)),VALUE(TEXT(O2:O&" "&P2:P,"yyyy/mm/dd hh:mm"))<=VALUE(TEXT(A2,"yyyy/mm/dd hh:mm"))+"1:00"),REGEXREPLACE(FILTER(Q2:Q,ISNA(MATCH(Q2:Q, S2:S, 0)),VALUE(TEXT(O2:O&" "&P2:P,"yyyy/mm/dd hh:mm"))<=VALUE(TEXT(A2,"yyyy/mm/dd hh:mm"))+"1:00"),"(https?:\\/\\/([\\w.-]+\\/){7})","($1)")))-44),Sheet2!D:D, 0))))),300,1),ISNA(MATCH(ARRAY_CONSTRAIN(FILTER(Q2:Q,ISNA(MATCH(Q2:Q, S2:S, 0)),VALUE(TEXT(O2:O&" "&P2:P,"yyyy/mm/dd hh:mm"))<=VALUE(TEXT(A2,"yyyy/mm/dd hh:mm"))+"1:00"),300,1), X:X, 0)))\n)');
ss.getRange('Página1!V2:V').copyTo(ss.getRange('Página1!V2'), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
ss.getRange('Página1!U2:U').copyTo(ss.getRange('Página1!S2'), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
ss.getRange('Página1!W2:W').copyTo(ss.getRange('Página1!X2'), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
ss.getRange('Página1!V2:V1000000').clear({contentsOnly: true, skipFilteredRows: true});
ss.getRange('Página1!V2').setFormula('=IFERROR(FILTER(ARRAY_CONSTRAIN(UNIQUE(IFERROR(FILTER(FILTER(Q2:Q,ISNA(MATCH(Q2:Q, S2:S, 0)),VALUE(TEXT(O2:O&" "&P2:P,"yyyy/mm/dd hh:mm"))<=VALUE(TEXT(A2,"yyyy/mm/dd hh:mm"))+"1:00"),ISNA(MATCH(RIGHT(REGEXEXTRACT(FILTER(Q2:Q,ISNA(MATCH(Q2:Q, S2:S, 0)),VALUE(TEXT(O2:O&" "&P2:P,"yyyy/mm/dd hh:mm"))<=VALUE(TEXT(A2,"yyyy/mm/dd hh:mm"))+"1:00"),REGEXREPLACE(FILTER(Q2:Q,ISNA(MATCH(Q2:Q, S2:S, 0)),VALUE(TEXT(O2:O&" "&P2:P,"yyyy/mm/dd hh:mm"))<=VALUE(TEXT(A2,"yyyy/mm/dd hh:mm"))+"1:00"),"(https?:\\/\\/([\\w.-]+\\/){7})","($1)")),LEN(REGEXEXTRACT(FILTER(Q2:Q,ISNA(MATCH(Q2:Q, S2:S, 0)),VALUE(TEXT(O2:O&" "&P2:P,"yyyy/mm/dd hh:mm"))<=VALUE(TEXT(A2,"yyyy/mm/dd hh:mm"))+"1:00"),REGEXREPLACE(FILTER(Q2:Q,ISNA(MATCH(Q2:Q, S2:S, 0)),VALUE(TEXT(O2:O&" "&P2:P,"yyyy/mm/dd hh:mm"))<=VALUE(TEXT(A2,"yyyy/mm/dd hh:mm"))+"1:00"),"(https?:\\/\\/([\\w.-]+\\/){7})","($1)")))-44),Sheet2!D:D, 0))))),300,1),ISNA(MATCH(ARRAY_CONSTRAIN(FILTER(Q2:Q,ISNA(MATCH(Q2:Q, S2:S, 0)),VALUE(TEXT(O2:O&" "&P2:P,"yyyy/mm/dd hh:mm"))<=VALUE(TEXT(A2,"yyyy/mm/dd hh:mm"))+"1:00"),300,1), X:X, 0)))\n)');
ss.getRange('Página1!V2:V').copyTo(ss.getRange('Página1!V2'), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
ss.getRange('Página1!U2:U').copyTo(ss.getRange('Página1!S2'), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
ss.getRange('Página1!W2:W').copyTo(ss.getRange('Página1!X2'), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
ss.getRange('Página1!V2:V1000000').clear({contentsOnly: true, skipFilteredRows: true});
ss.getRange('Página1!V2').setFormula('=IFERROR(FILTER(ARRAY_CONSTRAIN(UNIQUE(IFERROR(FILTER(FILTER(Q2:Q,ISNA(MATCH(Q2:Q, S2:S, 0)),VALUE(TEXT(O2:O&" "&P2:P,"yyyy/mm/dd hh:mm"))<=VALUE(TEXT(A2,"yyyy/mm/dd hh:mm"))+"1:00"),ISNA(MATCH(RIGHT(REGEXEXTRACT(FILTER(Q2:Q,ISNA(MATCH(Q2:Q, S2:S, 0)),VALUE(TEXT(O2:O&" "&P2:P,"yyyy/mm/dd hh:mm"))<=VALUE(TEXT(A2,"yyyy/mm/dd hh:mm"))+"1:00"),REGEXREPLACE(FILTER(Q2:Q,ISNA(MATCH(Q2:Q, S2:S, 0)),VALUE(TEXT(O2:O&" "&P2:P,"yyyy/mm/dd hh:mm"))<=VALUE(TEXT(A2,"yyyy/mm/dd hh:mm"))+"1:00"),"(https?:\\/\\/([\\w.-]+\\/){7})","($1)")),LEN(REGEXEXTRACT(FILTER(Q2:Q,ISNA(MATCH(Q2:Q, S2:S, 0)),VALUE(TEXT(O2:O&" "&P2:P,"yyyy/mm/dd hh:mm"))<=VALUE(TEXT(A2,"yyyy/mm/dd hh:mm"))+"1:00"),REGEXREPLACE(FILTER(Q2:Q,ISNA(MATCH(Q2:Q, S2:S, 0)),VALUE(TEXT(O2:O&" "&P2:P,"yyyy/mm/dd hh:mm"))<=VALUE(TEXT(A2,"yyyy/mm/dd hh:mm"))+"1:00"),"(https?:\\/\\/([\\w.-]+\\/){7})","($1)")))-44),Sheet2!D:D, 0))))),300,1),ISNA(MATCH(ARRAY_CONSTRAIN(FILTER(Q2:Q,ISNA(MATCH(Q2:Q, S2:S, 0)),VALUE(TEXT(O2:O&" "&P2:P,"yyyy/mm/dd hh:mm"))<=VALUE(TEXT(A2,"yyyy/mm/dd hh:mm"))+"1:00"),300,1), X:X, 0)))\n)');
ss.getRange('Página1!V2:V').copyTo(ss.getRange('Página1!V2'), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
ss.getRange('Página1!U2:U').copyTo(ss.getRange('Página1!S2'), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
ss.getRange('Página1!W2:W').copyTo(ss.getRange('Página1!X2'), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
if (ss.getSheetByName('Página1').getRange("A4").getValues()[0][0]=="Limpar"){
ss.getRange('Página1!X2:X1000000').clear({contentsOnly: true, skipFilteredRows: true});
};
}
Заключительная деталь: в моей учетной записи ничего не осталось, она была создана только для этой таблицы и этого скрипта. Таким образом, он не выходит за рамки каких-либо ограничений, у меня есть еще одна учетная запись с несколькими или несколькими таблицами с 5-минутными триггерами, и все они работают отлично. Но этот специально для этой учетной записи работает некорректно.
Есть скрипты, которые я использую, которые намного сложнее и тяжелее, все работают на 100% хорошо. Я нахожу это очень странным, нет логического объяснения происходящего. По крайней мере, я не могу придраться к тому, что знаю об этом.
Интересно, можно ли что-нибудь сделать, чтобы решить эту проблему.
1 ответ
Использование триггера ограничено квотами
Так, например, для учетной записи потребителя существует максимальное количество запусков в 90 минут в день.
Если вы запускаете триггер каждые 5 минут, то есть 24 x 12 раз в день, и если среднее время выполнения составляет 30 с - общее время выполнения составляет 24 x 12 x 30 с / день = 144 мин / день> 90 мин / день