O Script da Planilha Google não está executando totalmente
Estou usando um formulário do Google para acionar este script.
Quando executo o script com o botão Play, ele funciona perfeitamente.
Quando eu deixo o gatilho onsubmit executá-lo, a caixa de seleção é preenchida corretamente, mas a data setValue não.
Também tentei usar, setFormulamas obtive o mesmo resultado.
function AddCheckBox_toSchoolLunchForm(F) {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Form Responses 1")
var criteria = SpreadsheetApp.DataValidationCriteria.CHECKBOX;
var rule = SpreadsheetApp.newDataValidation().requireCheckbox().build();
var range = sheet.getRange(sheet.getLastRow(), 8);
range.clearContent();
range.setDataValidation(rule);
var FormulaCell = sheet.getRange(sheet.getLastRow(), 10);
FormulaCell.setFormula("=DATEVALUE(A" + (sheet.getLastRow()) + ")");
}
O objetivo final é preencher a coluna J com a data formatada da tacada da coluna A cada vez que o formulário for enviado.
Preciso desse formato para executar um countIfs em outra planilha.
Outra opção seria incorporar de alguma forma uma tag de formato a este comando CountIfs para que correspondam.
=COUNTIFS('Form Responses 1'!J:J,A2,'Form Responses 1'!D:D,B2)
Respostas
RESPOSTA ATUALIZADA
Se você tiver problemas para executar uma função no gatilho enquanto ela funciona como planejado sem um gatilho, verifique o seguinte:
Para arquivos / dados de formulário pesados, eles podem atrasar o preenchimento da planilha com novos dados de formulário.
Para evitar conflitos, dê à planilha algum tempo para preencher a nova linha antes de recuperar
sheet.getLastRow()ou acessar os dados na planilha.Você pode pontuar facilmente, por exemplo, com Utilities.sleep () .
Verifique se o seu gatilho foi instalado corretamente. Para isso, verifique se
- o tipo de gatilho está correto
- o gatilho está ligado à função correta
- evite conflitos criando um novo gatilho ao renomear a função.
Verifique se o problema não é devido a restrições de gatilho
Esta é uma fonte de erro comum ao usar gatilhos simples.
Verifique se a conta sob cuja autorização o acionador está sendo executado tem permissões para editar a planilha / intervalo. Isso é importante para verificar quando o proprietário do gatilho é uma pessoa diferente da pessoa que executa o script manualmente.
Observe que para
setFormula()isso não é necessário incorporar o=na fórmulaObserve que
DATEVALUE()só retornará o resultado esperado quando a célula estiver formatada corretamente como uma data