Jump to content

Pedro Augusto

Membros
  • Contagem de Conteúdo

    4
  • Ingressou

  • Última visita

Informações Pessoais

  • Cidade
    São João Del-rei
  • Estado
    Minas Gerais (MG)

Clientes & Parceiros

  • Você é um cliente TecnoSpeed?
    Não

Conquistas de Pedro Augusto

1

Reputação na Comunidade

  1. Ainda não funcionou, cheguei a testar só ele, apaguei os outros scripts que tinha, mas nn adiantou, ainda nn desfaz a alteração
  2. int mano, eu testei aqui e mesmo clicando em cancelar não desfaz a alteração
  3. Olá pessoal, tudo bem?preciso de ajuda com um script que estou fazendo no Apps Script, eu não entendo praticamente nada de linguagem java, estou no começo, então estou pelejando. Bom, direto ao assunto, estou criando uma planilha de fluxo de caixa, e tenho a intenção de fazer o seguinte, criar um botão onde fecharia o caixa, o processo de coleta de informação já fiz, mas o mais importe é: quero que quando o caixa feche, que a guia daquele dia(no caso tem uma guia para cada dia do mês) não fique mais possível a edição, tentei fazer por proteção de célula, mas o próprio usuário não pode se retirar a permissão de edição, int a melhor opção que achei foi de colocar um Browser.inputBox com uma senha, que aparece quando é feita uma alteração na guia após ela ser fechada, mas o problema é: a intenção é que caso o usuario clique em cancelar no Browser.inputBox, a alteração seja desfeita, e retorne para como estava antes, MAS AI É QUE ESTÁ, não consegui que voltasse a como era antes,nem apagar, mesmo tentando com o Chatgpt não vai, me ajudem por favor! Segue o script: var rangeEditada = null; var valoresOriginais = null; function onOpen() { adicionarTriggerVerificacaoSenha(); } function adicionarTriggerVerificacaoSenha() { var planilha = SpreadsheetApp.getActiveSpreadsheet(); ScriptApp.newTrigger("verificarSenha") .forSpreadsheet(planilha) .onEdit() .create(); } function verificarSenha(e) { var senhaCorreta = "123"; var usuario = Session.getActiveUser(); var sheet = e.range.getSheet(); if (!sheet.getName().match(/^\d{2}$/)) return; // Sai se a guia não estiver no formato "XX" var senhaDigitada; var tentativas = 0; while (true) { senhaDigitada = Browser.inputBox('INFORME A SENHA', 'Senha:', Browser.Buttons.OK_CANCEL); if (senhaDigitada === senhaCorreta) { break; // Sai do loop se a senha estiver correta } else if (senhaDigitada === "cancel") { if (rangeEditada && valoresOriginais) { rangeEditada.setValues(valoresOriginais); } return; // Sai da função sem exibir o Browser.msgBox novamente } tentativas++; if (tentativas > 0) { Browser.msgBox("Senha incorreta!"); } } // Remove o trigger após a primeira execução ScriptApp.getProjectTriggers().forEach(function(trigger) { ScriptApp.deleteTrigger(trigger); }); // Salva a célula editada e seus valores originais rangeEditada = e.range; valoresOriginais = e.range.getValues(); }
×
×
  • Create New...