Триггер должен срабатывать каждые 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 мин / день