De novo assistindo essa aula que é a mais importante do canal! Vamos às dúvidas: Tentando entender porque para chamar o formulário você usou aspas simples e para chamar a planilha você usou aspas duplas. Como eu vou saber quando usar um e quando usar o outro?
Muito boa suas explicações. Contudo quando apliquei no exemplo ensinado a linha: //function updateUF() //{ // form.getItemById(".......").asListItem().setChoiceValues(range); //} Gera um erro informando que não consegue ler o: "int". Isso já usando a função configurada para:update Não deu certo no final ao atualizar automaticamente o campo do Formulário. Contudo, deu certo se tirar as "aspas" do registro da Id da atualização. // form.getItemById(.......) Setendo apenas o número sem aspas. Funcionou!!! Grande dica.
O bom de você mesmo fazer seu código é que sai do jeito que você quer, podendo atender melhor sua necessidade do que um complemento feito por outras pessoas.
muito bom os vídeos! Teria com fazer um exemplo de caixa de seleções dependentes?! tipo selecionar o estado e outra caixa apresentar apenas as cidades da UF selecionada!
Obrigado pelo excelente curso de forms. Sobre a lista suspensa, tenho uma lista muito grande de opções e gostaria de implementar uma espécie de barra de pesquisa, de forma que eu digite algumas letras e as opções vão aparecendo, sabe? Existe essa possibilidade no forms? Forte abraço!
Tive o mesmo erro Cannot convert .... to int, retirei as aspas e funcionou(em parte), acrescentou os dados numa nova questão ao invés de atualizar e dá outro erro:TypeError: Cannot read property 'asListItem' of null. function updateDias() { form.getItemById(1.911283395E9).asListItem().setChoiceValues(range); }
Eu consigo identificar se o usuario saiu da página de form, talvez para pesquisar a resposta? Por exemplo: Se eu faço algumas perguntas no form e quero saber se a pessoa sabe de fato aqui, eu consigo identificar se ela saiu da página e caso afirmativo eu faço o envio?
Parabéns pelas aulas! aprendendo muito. Tenho uma dúvida: gostaria de preencher um campo no formulário com a data do dia e não estou conseguindo fazer. Pode dar uma dica?
Boa noite, iniciando no assunto do Apps Script, essa aula foi muito boa. Caso eu queira colocar uma condição IF, por exemplo, lista com nomes de funcionários e um campo de validação com Ativo/Inativo? Preciso manter todos os nomes, porém, no formulário listo apenas os ativos.
Parabéns pelo vídeo! Excelente didática! Não entendo muito de Java, mas vou tentar adaptar para usar um campo de chave de validação com base numa lista de chaves existentes numa planilha do Google. Na verdade estou tentando encontrar uma forma de distribuir estas chaves para pesquisas anonimas, porém limitando a uma única resposta. Na medida que as chaves forem sendo incluídas na base do Google Forms, serão eliminadas da lista da planilha.
Estou gostando muito do seu curso, parabéns pela explicação. Gostaria de saber como criar uma planilha com as informações dos dados e que eu conseguisse colocar por exemplo várias respostas em uma mesma coluna onde seria definida um mesmo item.
Boa tarde Professor, Muito boa sua aula, consegui fazer as atualizações como mostrado, no entanto quero no mesmo formulário puxar outra pergunta, e não estou conseguindo, aparece a ultima lista para as 02, no que estou errando?
Parabéns pela aula! O acionador só é ativado com a abertura do formulário em modo de edição. Faria mais sentido que ele fosse acionado na abertura do formulário pelo usuário final. Você sabe o que pode estar acontecendo? É assim mesmo?
Excelente aula, mas não consegui entender como fazer as permissões... Você tem algum vídeo explicando essa parte mais detalhada ? Se puder me auxiliar eu agradeço
Ótimo vídeo! É possível colocar um opção de consulta no formulário para puxar do banco de dados Google sheets? Ou seja um campo de busca e voltar com resultado. Obrigada
Aqui deu tudo certinho até chegar no final, no acionador: Quando vou em adicionar o acionador, em 'Selecione a origem do evento', aqui só aparece duas opções: 'Baseado no tempo' e 'Da agenda'. Não aparece a opção 'Do formulário'. Alguem sabe oq pode estar acontecendo?
Boa Noite professor! Aula Maravilhosa! Estou com um problema com o ID do item bem no finalzinho, quando eu rodo o logger ele dá um ID, ai adiciono ele e tento rodar o updateUF, porém da uma mensagem de erro: Exception: Cannot convert '5.87237627E8' to int. Reparei que quando eu rodo o Logger o ID muda! Mesmo que eu salve antes, durante ou depois, é como se a cada vez que eu rodasse o ID muda para um novo. O que fazer nesse caso?
Bom dia! Curtindo muito o curso Acabei de deparando com um erro Erro Exception: Cannot convert '2.79199432E8' to int. Revisei o código umas 3 vezes e esta tudo certo. Rodou a função de adicionar itens para o forms, só essa parte do atualizar que está dando erros
Para quem estiver com o erro: Cannot read property 'asListItem' of null Sugiro executar novamente a linha de código Logger.log(item.getId()); dentro da function get que criou e verificar se o código permanece o mesmo. O erro acontece se você excluir o campo do formulário criado pelo get e quando você tenta executar o update o ID do campo é outro.
@@brenomachado4786 quanto você usa a get, você cria um novo campo de formulário com aquele código, aí você coloca ele no update. Toda vez que você usar a get ela vai gerar um novo campo no formulário com um novo código mesmo
@@augusto151192 O problema, é que após eu conseguir o código, e incluir no function de update, e rodo apenas a function de update a função não fecha pq indica esse erro: Exception: Cannot convert '7.65755667E8' to int. A principio achava que era o código que estava errado
Eu consigo criar um contador de respostas no google forms, por exemplo: na hora que o cliente termina o preenchimento do formulário aparece uma mensagem de agradecimento junto com o número de posição dele na fila de atendimento....dá para fazer isso?
Como faz para pegar os id dos campos que já estão no formulário? É possivel ordenar os dados que pegamos na planilha antes de enviá-los para o formulário?
Eu também tive essa mesma dúvida amigo... e fiz essa função para pegar todas as informações das perguntas que já existem em algum formulário. Espero que ajude... function pegarIds(){ let form = FormApp.openById('Aqui você coloca o id do seu formulário'); let itens = form.getItems(); for(i = 0; i < itens.length; i++){ var pergunta = itens[i]; Logger.log( 'Pergunta %s, %s, %s, %s', pergunta.getIndex(), pergunta.getTitle(), pergunta.getType(), pergunta.getId()) }; };
Gostaria de criar uma escala linear porém alterar as cores dessa escala, exemplo botão número 1, tem uma cor, 2 outra cor... Isso ajuda o usuário a identificar mais rápido a resposta, consigo fazer essa alteração de design mais complexa pelo app script? E como eu faço isso? rs não achei nenhum vídeo falando sobre
Bom dia Professor. Suas aulas são excelentes. Aprendo muito. Parabéns. Gostaria de tirar uma dúvida. Fiz um relatório para funcionarios porem quando mando atualizar utilizando o código [form.getItemById("1.869312948E9").asListItem().setChoiceValues(range);] está dando erro. [Exception: Cannot convert '1.869312948E9' to int.] . Sabe me informar onde posso ter errado. Obrigado
Criei o meu formulário e funciona, mas tenho 2 perguntas: Como faço para o formulário atualizar quando é aberto em modo de apresentação final? Posso ter múltiplas dropdown list ligadas à SpreadSheets? Obrigado e bom trabalho.
É possível criar um formulário que alimente um template doc e já envie o doc como pdf por email para quem preencheu o formulário ? Se é possível qual seria o caminho?
Teria como obter a última resposta do formulário logo depois de pressionar o botão de envio? O objetivo é obter as respostas dos campos do tipo "ScaleItem", somar os valores e apresentar a mensagem de envio com a soma das respostas. Consegui implementar, mas só para a resposta anterior que já havia sido lançada na sheet vinculada. Mas quando tento pegar a última resposta enviada simultâneo ao pressionamento do botão de envio dá erro, porque, por certo os valores ainda não estão no formulário. Será que tem alguma forma de implementar isso?
Mestre, existe a possibilidade de utilizar informações de uma resposta mais adiante em outra parte do formulário. Exemplo: A primeira pergunta seria: Qual o seu nome? resposta: Pedro Então eu utilizar essa resposta em uma frase final no formulário. Exemplo: Obrigado, Pedro(preenchido automaticamente pela resposta da primeira pergunta) por responder nosso formulario... Isso me ajudaria muito se for possível. No mais, parabéns e obrigado pelas aulas.
Muito muito boa a sua aula! Eu a segui muito bem, mas tentei aplicar a ideia para Checkbox e estou obtendo o seguinte erro: Exception: Invalid conversion for item type: CHECKBOX Existe alguma maneira de realizar a parte do Update de itens para Checkbox? A parte da criação da lista funcionou perfeitamente.
Alguém sabe me indicar algum complemento para Google Forms que importa as opções de respostas de uma planilha Google e tem up date automático (se o banco de dados modifica, modifica também as opções de respostas)?
Excelente material, parabéns! Uma pergunta: como posso copiar uma (ou mais) Questão inteira de um "Formulário Pai" para outro "Formulário Filho" que estou montando (via Script)? (Digamos que eu tenho o ID do Formulário Pai e o ID da Questão). A ideia é que o Formulário Pai terá 100 Questões, digamos, mas quero montar uma Prova com 10 delas. Grato!
Excelente curso e ótima didática. Parabéns! Tenho uma dúvida: criei um formulário onde possuo sessões de ramificação. Funciona da seguinte maneira: existe uma pergunta de qual o setor da empresa que se trata. Assim, de acordo com a opção escolhida, é direcionado para a a pergunta “qual funcionário será avaliado?” (Essa pergunta se repete 47 vezes, uma por seção, pois a empresa possui 47 setores). Gostaria de saber se consigo alocar as respostas dessas seções para uma única coluna?
como eu trabalho em escola tenho um mesmo aluno, com vários professores, em matérias diferentes e precisam ser reunidos. Eu passei a combinar algumas funções, mas muito da solução depende sobre como estão os dados na sua planilha. Se não te ajudar ao menos pode te despertar para ver que tipo de teste é mais trabalhável para o seu trabalho: Para reunir todas as colunas de um mesmo valor use FILTER, mas, importante, POR COLUNA. Quase ninguém usa FILTER assim mas é simples, Vou deixar um link aqui para ver como fazer (ua-cam.com/video/WRoWQhRf9K8/v-deo.html). Neste vídeo vai ver como filtrar colunas. Assim, pode reunir todas as colunas com o nome MANOEL DAS QUANTAS, por exemplo. É incomum este uso mas é muito fácil. Talvez o que tenho abaixo também possa ser útil. Veja Se fez os testes com múltipla escolha use caractere coringa. Se o nome MANOEL DAS QUANTAS está junto a qualquer coisa filtre assim: =FILTER(A1:BD500;A1:BD1="*"&MANOEL DAS QUANTAS&"*") Eu uso isso porque meu aluno PEDRO está no teste do 1B, assim na linha 1 da planilha fica [1B - PEDRO]. Com este filtro (em colunas) posso reunir todas as respostas sobre o PEDRO. Como disse, a forma do teste influí nas opções da planilha. . Outra coisa que me ajuda muito é a função TRANSPOR. Com ela pego uma respostas assim: EX: professores aluno 1 aluno 2 aluno 3 prof 1 8 5 6 prof2 7 8 7 prof 3 8 6 6 a ficar assim (melhor para usar algum PROCV ou FILTER) prof 1 prof 2 prof 3 aluno 1 8 7 8 aluno 2 5 8 6 aluno 3 8 6 6 que é muito mais fácil para usar um PROCV. Nota: um PROCV pode retornar vários resultados de uma mesma linha, basta usar ARRAYFORMULA nele. Exemplo: ARRAYFORMULA(PROCV(chave;intervalo;{2\3\6\10\36};0) ) Com ARRAYFORMULA pode retornar mais de um índice colocando-os dentro de {}. Isso te permitirá pegar todas as respostas de um mesmo teste. Os valores 2\3\6\10\36 são os índices da coluna que quero retornar. Se não te ajudei que lhe dê alguma ideia. ;)
Excelente aula, Parabéns. Assisti todas do Google Formulários. OBS: Teria como exportar todas as "perguntas" para o formato documento ou planilha? Agradeço pela atenção. #SucessonosCodigosenaVida
Olá! Quando substituo o ID da questão e executo o programa, recebo esta mensagem "Erro Exception: Cannot convert '1.81176648E8' to int.". O que posso fazer?
Top... Como faço para atualizar o formulário sem precisar abrir o modulo de edição? Exemplo: eu acrescento na tabela um novo estado, e o usuário comum vai diretamente para o preenchimento do formulário. Este formulário não mostra o novo estado inserido a mesmo que eu abra o modo de edição do formulário.
Boa tarde... Estou tentando criar um sistema via formulários, gostaria de saber se é possível gerar uma área de cadastro e login em dois formulários, permitindo que apenas validando os logins e senhas preenchidos em um formulário anterior sejam acessáveis as seções posteriores do formulário
Tem como criar um formulário que dependendo do valor colocado no formulário abre outras opções? Ex: se seleciono Santa Catarina abre as opções loja 1, loja 2, loja 3. Se seleciono São Paulo abre loja 4, loja 6..
Estou com o mesmo problema Linha 16: form.getItemById("1.933553599E9").asListItem().setChoiceValues(range); sem as aspas retornou o seguinte erro: "TypeError: Cannot read property 'asListItem' of null (linha 17, arquivo "Código")"
No meu script deu o seguinte erro: "Exception: Cannot convert '1.557221452E9' to int.", daí eu tive que remover as aspas. Mas de qualquer forma, seu vídeo foi muito interessante.
Muito boa a aula, assim como todas as outras. Professor, meu problema é o seguinte, Ele tá retornando as linhas que não tem conteúdo, tem como configurar para que apenas as linhas que tenham alguma informação inseridas sejam exibidas? Desde já, grato!
@@WebdesignemFoco Resolvido. Eu estava usando uma única guia com várias colunas com conteúdos. Removi as que não vou usar e deixei apenas uma coluna com conteúdo. Funcionou, Obrigado!
Excelente explicação! Parabéns Professor! No teste para verificar se os dados estão vindo (8min10s) segui exatamente como no vídeo: " range.map(function(elem,ind,obj){ Logger.log(elem); }); ", mas aparece o erro: "TypeError: range.map is not a function getName @ Código.gs:8". Como corrigir esse erro?
Existe algum scripts para evitar cadastro repetido no Google Forms, através do CPF? A opção que ele oferece de aceitar apenas um formulário por e-mail não ficaria viável pois utilizo o Google Forms para cadastro de Leds, ou seja uma pessoa efetuar vários cadastros.
Excelente vídeo! Eu posso criar várias questões com listas suspensas diferentes utilizando esse script? tentei criar um formulário om cinco questões e suas respectivas listas, mas ele não buscou a lista certa na hora do update, preciso acrescentar alguma informação?
Resolvi com o código var itemId = parseFloat("1.969056297E9"); Logger.log('ID do item:', itemId); var item = form.getItemById(itemId); if (item) { item.asListItem().setChoiceValues(range); } else { console.error('Item não encontrado com o ID:', itemId); }
Você tem algum curso completo avançado? Estou precisando fazer um formulário para um recadastro de telefones funcionais da empresa. O formulário só vai perguntar duas coisas: 1) A matricula do funcionario e 2) o número do telefone funcional. Quando alguêm digitasse a matricula e o número fosse feito uma checagem com a lista de todas as matriculas e números da empresa numa planilha para poder validar. Isso seria para depois que o funcionário tiver a linha cortada não vir dizer que digitou alguma coisa errada.
Específico não, mas se quiser posso te ajudar a montar através do suporte premium. Para contratar entre em contato pelo email webdesignemfoco@gmail.com
todo mundo conseguiu? o meu na parte 14:09 do video esta dando: [20-12-08 16:28:20:510 VET] Exception: Não é possível converter "1.749198083E9" em "int". at updateMcA(Código:18:8)
@@FranciBahamult abra o projeto, vá em executar e desative o novo tempo de execução do app scripts com a tecnologia do chrome V8. O meu dava errado até eu desativar e deu certo. Espero ter ajudado.
Gostaria de saber se existe a possibilidade de implementar duas situações: 1. No campo data aparecer um calendário para escolher a data, assim como no campo hora, aparecer um relógio para escolher as horas (para qualquer browser); 2. Introduzir campos de georreferenciamento (latitude / longitude). Obrigado.
Também queria saber. Meus usuários precisam inserir muitas datas sempre reclamam que no navegador do desktop não aparece o calendário como aparece na versão mobile, o que atrasa o trabalho. Eu geralmente oriento que usem o emulador do próprio navegador, assim tem a opção do calendário e a praticidade de digitar no teclado do computador de mesa.
Muito bom o video, direto ao ponto sem enrolação
De novo assistindo essa aula que é a mais importante do canal! Vamos às dúvidas:
Tentando entender porque para chamar o formulário você usou aspas simples e para chamar a planilha você usou aspas duplas. Como eu vou saber quando usar um e quando usar o outro?
Quero lhe parabenizar pela sua disponibilidade em compartilhar seu conhecimento desta ferramenta, estou aprendendo muito. Obrigado
Muito obrigado!
excelente didática e pedagogia...parabéns
Obrigado pelo elogio
Finally found, here, what I was looking for... Tkz
Melhor vídeo de formulários que eu já vi!!! Parabéns!!! Excelente
Vlw irmão 👍👍
Muito muito boa a sua aula!
Obrigado pelo elogio
Muito boa suas explicações.
Contudo quando apliquei no exemplo ensinado a linha:
//function updateUF()
//{
// form.getItemById(".......").asListItem().setChoiceValues(range);
//}
Gera um erro informando que não consegue ler o: "int". Isso já usando a função configurada para:update
Não deu certo no final ao atualizar automaticamente o campo do Formulário.
Contudo, deu certo se tirar as "aspas" do registro da Id da atualização.
// form.getItemById(.......)
Setendo apenas o número sem aspas.
Funcionou!!!
Grande dica.
Obrigado pelo feedback
@@WebdesignemFoco Tive o mesmo erro, e a dica do colega de retirar as aspas também funcionou, Obrigado!
cara!! quebrei cabeça até e não tinha conseguido, com sua dica,, funcionou..valew mano
Esse curso me ajudou muito, obrigado!🙏🙏
Show!
Parabéns pelas aulas, precisamos de mais aulas assim com Scripts
vlw Lucas, tmj!
Isso foi perfeito!
Tmj
Após mais de 50 tentativas, finalmente deu certo!
Muito obrigado por compartilhar seus conhecimentos!
Disponha!
Fera!!!!!!!
Parabéns pelo excelente curso. Linguagem de programação é realmente mais difícil, mas aprender e praticar ajuda bastante!
Vlw
Muito bom! Obrigado.
Vlw
muito grato, que Deus te conceda muitas bençãos e aumente o teu saber
Muito obrigado. Tudo de bom!
Animei em aprender os scripts! Obrigado!!
Vlw irmão
Valeu!
Tmj
Demais! obrigado!
Muito bom!
Muito obrigado
Ótimo Conteúdo!!
Muito obrigado. Tmj
Eu vou fazer esse cursooo
Top!
Obrigado pelas dicas!
Por nada irmão, Tmj!
Aula mais importante do curso e eu ainda não consegui!
Vamos lá para a vigésima tentativa!
Vai conseguir
Excelente Vídeo!
Existem alguns complementos que dão essa opção, mas dessa forma que vc fez é top de mais! Sou fã do seu trabalho...
Grande abraço
muito obrigado pelo feedback!
O bom de você mesmo fazer seu código é que sai do jeito que você quer, podendo atender melhor sua necessidade do que um complemento feito por outras pessoas.
@@Brunooc0 com certeza, isso é fato!
MUITO bom
Muito obrigado
Muito bom e bem explicado, assim que possível acrescenta uma playlist sobre o google sites.
Muito obrigado
a ultima linha apresenta este erro "Cannot convert '3.9207203e7' to int." como corrigir?
Excelente vídeo explicativo!!!Parabéns!!! Dúvida: como eliminar valores repetidos na origem de dados ao "puxar" no setchoisevalues?
tu e o cara.
Excelente aula, mas eu preciso estudar JS primeiro. Obrigado por compartilhar um pouco do seu conhecimento.
Você vai conseguir. Abraços!
Mesma situação aqui!
muito bom os vídeos! Teria com fazer um exemplo de caixa de seleções dependentes?! tipo selecionar o estado e outra caixa apresentar apenas as cidades da UF selecionada!
Isso não é possível no Google Forms
Eu precisava disso. putzzz
Obrigado pelo excelente curso de forms.
Sobre a lista suspensa, tenho uma lista muito grande de opções e gostaria de implementar uma espécie de barra de pesquisa, de forma que eu digite algumas letras e as opções vão aparecendo, sabe? Existe essa possibilidade no forms?
Forte abraço!
Deu certo!
quando chama o formulário tem que ser aspas simples e quando chama a planilha tem que ser aspas duplas!
(vai saber pq...)
Bom dia,
Como faço para marcar como visualizado as respostas do formulário
👌
Até aqui foi tudo ok
Tive o mesmo erro Cannot convert .... to int, retirei as aspas e funcionou(em parte), acrescentou os dados numa nova questão ao invés de atualizar e dá outro erro:TypeError: Cannot read property 'asListItem' of null.
function updateDias()
{
form.getItemById(1.911283395E9).asListItem().setChoiceValues(range);
}
Eu consigo identificar se o usuario saiu da página de form, talvez para pesquisar a resposta?
Por exemplo:
Se eu faço algumas perguntas no form e quero saber se a pessoa sabe de fato aqui, eu consigo identificar se ela saiu da página e caso afirmativo eu faço o envio?
Parabéns pelas aulas! aprendendo muito. Tenho uma dúvida: gostaria de preencher um campo no formulário com a data do dia e não estou conseguindo fazer. Pode dar uma dica?
Uma curiosidade. No exemplo q vc falou de ir adicionando os funcionários, como faz pra remover se o funcionário saiu da empresa?
Boa noite, iniciando no assunto do Apps Script, essa aula foi muito boa. Caso eu queira colocar uma condição IF, por exemplo, lista com nomes de funcionários e um campo de validação com Ativo/Inativo? Preciso manter todos os nomes, porém, no formulário listo apenas os ativos.
No meu caso eu tive que criar uma aba com query para poder puxar
Muito boa sua aula, tem me ajudado muito. Gostaria de coletar a localização do entrevistado, é possível??
O Google não permite
Parabéns pelo vídeo! Excelente didática! Não entendo muito de Java, mas vou tentar adaptar para usar um campo de chave de validação com base numa lista de chaves existentes numa planilha do Google. Na verdade estou tentando encontrar uma forma de distribuir estas chaves para pesquisas anonimas, porém limitando a uma única resposta. Na medida que as chaves forem sendo incluídas na base do Google Forms, serão eliminadas da lista da planilha.
Cuidado para não confundir Java com javascript
@@WebdesignemFoco Para você ver que tenho pouco conhecimento mesmo. Valeu pela dica!
@@FabioGuilhon tranquilo, tmj
Estou gostando muito do seu curso, parabéns pela explicação. Gostaria de saber como criar uma planilha com as informações dos dados e que eu conseguisse colocar por exemplo várias respostas em uma mesma coluna onde seria definida um mesmo item.
Olá, Carlos! Tenho a mesma situação problema. Vc encontrou solução?
@@sandovalmendes1728 ainda não
Boa tarde Professor,
Muito boa sua aula, consegui fazer as atualizações como mostrado, no entanto quero no mesmo formulário puxar outra pergunta, e não estou conseguindo, aparece a ultima lista para as 02, no que estou errando?
Parabéns pela aula!
O acionador só é ativado com a abertura do formulário em modo de edição. Faria mais sentido que ele fosse acionado na abertura do formulário pelo usuário final. Você sabe o que pode estar acontecendo? É assim mesmo?
Excelente aula, mas não consegui entender como fazer as permissões...
Você tem algum vídeo explicando essa parte mais detalhada ?
Se puder me auxiliar eu agradeço
Ótimo vídeo! É possível colocar um opção de consulta no formulário para puxar do banco de dados Google sheets? Ou seja um campo de busca e voltar com resultado. Obrigada
No formulário padrão não, só utilizando API
O meu está dando erro no update : Exception: Cannot convert '1.59113366E8' to int.
Bom dia, Professor! Tem como pagar para remover link e propagandas do google no google form?
Existe algum plano que faça isso?
Aqui deu tudo certinho até chegar no final, no acionador:
Quando vou em adicionar o acionador, em 'Selecione a origem do evento', aqui só aparece duas opções: 'Baseado no tempo' e 'Da agenda'. Não aparece a opção 'Do formulário'. Alguem sabe oq pode estar acontecendo?
Boa Noite professor! Aula Maravilhosa! Estou com um problema com o ID do item bem no finalzinho, quando eu rodo o logger ele dá um ID, ai adiciono ele e tento rodar o updateUF, porém da uma mensagem de erro: Exception: Cannot convert '5.87237627E8' to int. Reparei que quando eu rodo o Logger o ID muda! Mesmo que eu salve antes, durante ou depois, é como se a cada vez que eu rodasse o ID muda para um novo. O que fazer nesse caso?
Consegui resolver a questão consultando os comentários, vale a pena pesquisar e entender as opções listadas pela comunidade aqui! Muito obrigado
mesma duvida aqui!
Exception: Cannot convert '7.38559126E8' to int. sempre aparece esse erro quando tento executar a função update
Quanto executo o update da o seguinte erro:
Cannot read property 'asCheckboxItem' of null (linha 17, arquivo "Código")
Também estou tentando executar algo parecido para CheckBox, mas também encontrei erros.
Vc Conseguiu resolver?
Bom dia! Curtindo muito o curso
Acabei de deparando com um erro
Erro
Exception: Cannot convert '2.79199432E8' to int.
Revisei o código umas 3 vezes e esta tudo certo. Rodou a função de adicionar itens para o forms, só essa parte do atualizar que está dando erros
Eu consegui resolvendo tirando o id das aspas ("")
@@christianodaveiga7847 Vou tentar depois. Valeuu
Para quem estiver com o erro: Cannot read property 'asListItem' of null
Sugiro executar novamente a linha de código Logger.log(item.getId()); dentro da function get que criou e verificar se o código permanece o mesmo.
O erro acontece se você excluir o campo do formulário criado pelo get e quando você tenta executar o update o ID do campo é outro.
Obrigado pela contribuição!
Todas as vezes que puxo o valor independente de apagar ou não o numero do item varia e nunca completa a função
@@brenomachado4786 quanto você usa a get, você cria um novo campo de formulário com aquele código, aí você coloca ele no update. Toda vez que você usar a get ela vai gerar um novo campo no formulário com um novo código mesmo
@@augusto151192 O problema, é que após eu conseguir o código, e incluir no function de update, e rodo apenas a function de update a função não fecha pq indica esse erro:
Exception: Cannot convert '7.65755667E8' to int.
A principio achava que era o código que estava errado
Encontrei o erro. Na verdade o ID não entra como string e sim como valor, tirar as aspas resolve.
Valeu forte abraço
Boa tarde!
Saberia me dizer se é possível incluir uma tabela para preenchimento no google forms!?
Até então eu acredito que não
Excelente vídeo, Parabéns.
No caso da lista ter 300 itens por exemplo. Tem alguma forma de facilitar a busca na hora de responder.
eu acredito que quando o usuário clica na lista e começa a digitar ele já busca
É possível fazer uma pergunta para colocar o CEP no formulário e já trazer o nome da rua , cidade e estado ?
Eu consigo criar um contador de respostas no google forms, por exemplo: na hora que o cliente termina o preenchimento do formulário aparece uma mensagem de agradecimento junto com o número de posição dele na fila de atendimento....dá para fazer isso?
Acredito que não viu
Como faz para pegar os id dos campos que já estão no formulário?
É possivel ordenar os dados que pegamos na planilha antes de enviá-los para o formulário?
Eu também tive essa mesma dúvida amigo... e fiz essa função para pegar todas as informações das perguntas que já existem em algum formulário. Espero que ajude...
function pegarIds(){
let form = FormApp.openById('Aqui você coloca o id do seu formulário');
let itens = form.getItems();
for(i = 0; i < itens.length; i++){
var pergunta = itens[i];
Logger.log( 'Pergunta %s, %s, %s, %s',
pergunta.getIndex(),
pergunta.getTitle(),
pergunta.getType(),
pergunta.getId())
};
};
Excelente, parabéns, a função "pegarIds" me ajudou muito. Obrigado.
@@tudosobregestao Esse codigo aqui foi massa hein! De responsa! ajudou muito!
Otimo video , tem como eu colocar o campo estado e logo após uma outra lista aparece com as cidades ?
Eu consigo fazer isso na planilha ou no formulário personalizado em um site, no formulário padrão não
Gostaria de criar uma escala linear porém alterar as cores dessa escala, exemplo botão número 1, tem uma cor, 2 outra cor... Isso ajuda o usuário a identificar mais rápido a resposta, consigo fazer essa alteração de design mais complexa pelo app script? E como eu faço isso? rs não achei nenhum vídeo falando sobre
O Google Forms não permite esse tipo de estilização. Pra fazer isso você tem que criar um site .com.br
só da este erro
[20-12-08 08:54:03:479 PST] ReferenceError: SpreasdsheetApp is not defined
at [unknown function](Código:2:19)
Resolveu?
@@tiagolourenco377 Eu estou vendo que o que eu quero fazer é um pouquinho mais complicado do que eu expliquei aqui...
Bom dia Professor. Suas aulas são excelentes. Aprendo muito. Parabéns. Gostaria de tirar uma dúvida. Fiz um relatório para funcionarios porem quando mando atualizar utilizando o código [form.getItemById("1.869312948E9").asListItem().setChoiceValues(range);] está dando erro. [Exception: Cannot convert '1.869312948E9' to int.] . Sabe me informar onde posso ter errado. Obrigado
Tira as " "
E cada vez que roda acrescenta nova questão
Ele explica no vídeo como resolver isso
Criei o meu formulário e funciona, mas tenho 2 perguntas:
Como faço para o formulário atualizar quando é aberto em modo de apresentação final?
Posso ter múltiplas dropdown list ligadas à SpreadSheets?
Obrigado e bom trabalho.
É possível criar um formulário que alimente um template doc e já envie o doc como pdf por email para quem preencheu o formulário ? Se é possível qual seria o caminho?
Quando dá esse erro o que faço? Questions cannot have duplicate choice values.
Vc deve ter duas células com valores iguais no range do excel. Verifique isso. Lembre que o Google Forms não aceita opções duplicadas.
Teria como obter a última resposta do formulário logo depois de pressionar o botão de envio? O objetivo é obter as respostas dos campos do tipo "ScaleItem", somar os valores e apresentar a mensagem de envio com a soma das respostas. Consegui implementar, mas só para a resposta anterior que já havia sido lançada na sheet vinculada. Mas quando tento pegar a última resposta enviada simultâneo ao pressionamento do botão de envio dá erro, porque, por certo os valores ainda não estão no formulário. Será que tem alguma forma de implementar isso?
Tem não
@@WebdesignemFoco Obrigado! Vou pensar em outra solução!
Mestre, existe a possibilidade de utilizar informações de uma resposta mais adiante em outra parte do formulário. Exemplo:
A primeira pergunta seria:
Qual o seu nome?
resposta: Pedro
Então eu utilizar essa resposta em uma frase final no formulário. Exemplo:
Obrigado, Pedro(preenchido automaticamente pela resposta da primeira pergunta) por responder nosso formulario...
Isso me ajudaria muito se for possível.
No mais, parabéns e obrigado pelas aulas.
No Formulário Padrão não, só é possível mudar de seção de acordo com a resposta anterior.
O mesmo procedimento poderia ser feito de uma planilha enviando dados para mais de um formulário?
Tem que testar, nunca fiz
@@WebdesignemFoco Merece uma vídeo aula!
Como essa playlist Já fechou acredito que poderia se incluirá na playlist de planilha
@@FranciBahamult obrigado pela sugestão
Muito muito boa a sua aula!
Eu a segui muito bem, mas tentei aplicar a ideia para Checkbox e estou obtendo o seguinte erro:
Exception: Invalid conversion for item type: CHECKBOX
Existe alguma maneira de realizar a parte do Update de itens para Checkbox?
A parte da criação da lista funcionou perfeitamente.
Alguém sabe me indicar algum complemento para Google Forms que importa as opções de respostas de uma planilha
Google e tem up date automático (se o banco de dados modifica, modifica também as opções de respostas)?
é justamente o que a
prendemos aqui
Excelente material, parabéns! Uma pergunta: como posso copiar uma (ou mais) Questão inteira de um "Formulário Pai" para outro "Formulário Filho" que estou montando (via Script)? (Digamos que eu tenho o ID do Formulário Pai e o ID da Questão). A ideia é que o Formulário Pai terá 100 Questões, digamos, mas quero montar uma Prova com 10 delas. Grato!
Também estou tentando aqui, seria um banco de dados em que as questões seriam sorteadas.
Quem sabe ele não faz uma vídeo aula para gente
Excelente curso e ótima didática. Parabéns!
Tenho uma dúvida: criei um formulário onde possuo sessões de ramificação. Funciona da seguinte maneira: existe uma pergunta de qual o setor da empresa que se trata. Assim, de acordo com a opção escolhida, é direcionado para a a pergunta “qual funcionário será avaliado?” (Essa pergunta se repete 47 vezes, uma por seção, pois a empresa possui 47 setores). Gostaria de saber se consigo alocar as respostas dessas seções para uma única coluna?
como eu trabalho em escola tenho um mesmo aluno, com vários professores, em matérias diferentes e precisam ser reunidos. Eu passei a combinar algumas funções, mas muito da solução depende sobre como estão os dados na sua planilha. Se não te ajudar ao menos pode te despertar para ver que tipo de teste é mais trabalhável para o seu trabalho:
Para reunir todas as colunas de um mesmo valor use FILTER, mas, importante, POR COLUNA. Quase ninguém usa FILTER assim mas é simples, Vou deixar um link aqui para ver como fazer (ua-cam.com/video/WRoWQhRf9K8/v-deo.html). Neste vídeo vai ver como filtrar colunas.
Assim, pode reunir todas as colunas com o nome MANOEL DAS QUANTAS, por exemplo. É incomum este uso mas é muito fácil.
Talvez o que tenho abaixo também possa ser útil. Veja
Se fez os testes com múltipla escolha use caractere coringa. Se o nome MANOEL DAS QUANTAS está junto a qualquer coisa filtre assim:
=FILTER(A1:BD500;A1:BD1="*"&MANOEL DAS QUANTAS&"*")
Eu uso isso porque meu aluno PEDRO está no teste do 1B, assim na linha 1 da planilha fica [1B - PEDRO]. Com este filtro (em colunas) posso reunir todas as respostas sobre o PEDRO. Como disse, a forma do teste influí nas opções da planilha.
.
Outra coisa que me ajuda muito é a função TRANSPOR. Com ela pego uma respostas assim:
EX:
professores aluno 1 aluno 2 aluno 3
prof 1 8 5 6
prof2 7 8 7
prof 3 8 6 6
a ficar assim (melhor para usar algum PROCV ou FILTER)
prof 1 prof 2 prof 3
aluno 1 8 7 8
aluno 2 5 8 6
aluno 3 8 6 6
que é muito mais fácil para usar um PROCV. Nota: um PROCV pode retornar vários resultados de uma mesma linha, basta usar ARRAYFORMULA nele. Exemplo:
ARRAYFORMULA(PROCV(chave;intervalo;{2\3\6\10\36};0) )
Com ARRAYFORMULA pode retornar mais de um índice colocando-os dentro de {}. Isso te permitirá pegar todas as respostas de um mesmo teste. Os valores 2\3\6\10\36 são os índices da coluna que quero retornar.
Se não te ajudei que lhe dê alguma ideia. ;)
Excelente aula, Parabéns.
Assisti todas do Google Formulários.
OBS: Teria como exportar todas as "perguntas" para o formato documento ou planilha?
Agradeço pela atenção.
#SucessonosCodigosenaVida
Sim, vc consegue integrar os produtos.
Olá! Quando substituo o ID da questão e executo o programa, recebo esta mensagem "Erro
Exception: Cannot convert '1.81176648E8' to int.". O que posso fazer?
Tire as aspas amigo.
Top... Como faço para atualizar o formulário sem precisar abrir o modulo de edição?
Exemplo: eu acrescento na tabela um novo estado, e o usuário comum vai diretamente para o preenchimento do formulário. Este formulário não mostra o novo estado inserido a mesmo que eu abra o modo de edição do formulário.
Nice. May this relate with apps script discussion ua-cam.com/video/4BmgVzpctCM/v-deo.html
Qual a diferença em declarar as variáveis com Var e Let ?
Tem o curso de Javascript aí no canal onde explico isso
Da pra deixar a resposta em caixa alta?
Boa tarde... Estou tentando criar um sistema via formulários, gostaria de saber se é possível gerar uma área de cadastro e login em dois formulários, permitindo que apenas validando os logins e senhas preenchidos em um formulário anterior sejam acessáveis as seções posteriores do formulário
Isso só é possível através de um site
@@WebdesignemFoco e impossível com javascript fazer a validação com base em dados de uma planilha google?
Tem como criar um formulário que dependendo do valor colocado no formulário abre outras opções?
Ex: se seleciono Santa Catarina abre as opções loja 1, loja 2, loja 3.
Se seleciono São Paulo abre loja 4, loja 6..
Vê uma das aulas do curso onde falo de seções
Excelente! Obrigado! Como faz para alterar a ordem da questão, via script?
tem que dar uma pesquisada na documentação, eu não lembro da ter visto essa opção lá
Estou com o mesmo problema
Linha 16: form.getItemById("1.933553599E9").asListItem().setChoiceValues(range);
sem as aspas retornou o seguinte erro: "TypeError: Cannot read property 'asListItem' of null (linha 17, arquivo "Código")"
Meu caso funcionou quando tirei as aspas dupla ("")
No meu script deu o seguinte erro: "Exception: Cannot convert '1.557221452E9' to int.", daí eu tive que remover as aspas. Mas de qualquer forma, seu vídeo foi muito interessante.
Tive o mesmo problema, para resolver você tem que ir configurações e desativar: “Ativar tempo de execução do Chrome V8”
@@FranciBahamult tem alguma outra forma de resolver?
Desativando o V8 as tampletes Strings nao funcionam
@@alessandroleitte7 É só remover as aspas entre o parêntese.
@@FranciBahamult O ID não pode mais ficar entre aspas, tem que remove-las.
@@lucasdavid3992 obrigado
Muito boa a aula, assim como todas as outras.
Professor, meu problema é o seguinte, Ele tá retornando as linhas que não tem conteúdo, tem como configurar para que apenas as linhas que tenham alguma informação inseridas sejam exibidas? Desde já, grato!
A sua variável lastrow não está pegando a última linha com conteúdo?
@@WebdesignemFoco Resolvido. Eu estava usando uma única guia com várias colunas com conteúdos. Removi as que não vou usar e deixei apenas uma coluna com conteúdo. Funcionou, Obrigado!
@@TECLEMAIS top!!
Excelente explicação! Parabéns Professor! No teste para verificar se os dados estão vindo (8min10s) segui exatamente como no vídeo: " range.map(function(elem,ind,obj){
Logger.log(elem);
}); ", mas aparece o erro: "TypeError: range.map is not a function
getName @ Código.gs:8". Como corrigir esse erro?
Comigo acontece o mesmo.
Existe algum scripts para evitar cadastro repetido no Google Forms, através do CPF?
A opção que ele oferece de aceitar apenas um formulário por e-mail não ficaria viável pois utilizo o Google Forms para cadastro de Leds, ou seja uma pessoa efetuar vários cadastros.
E possível assim que cadastrar na planilha remover o registro duplicado
@@WebdesignemFoco Olá, e qual seria a forma de fazer com que isso funcione?
@@Clubaspemg Scripts, qualquer coisa faça um orçamento de suporte premium pelo e-mail webdesignemfoco@gmail.com
usou aspas simples para chamar o formulário e aspas duplas para chamar a planilha?
No javascript tanto faz
Professor, quando tento usar a função para atualizar o código, dá erro. Não o reconhece o ID.
Para quem tiver com o mesmo problema, a solução é colocar o ID sem aspas.
Excelente vídeo! Eu posso criar várias questões com listas suspensas diferentes utilizando esse script? tentei criar um formulário om cinco questões e suas respectivas listas, mas ele não buscou a lista certa na hora do update, preciso acrescentar alguma informação?
Estou na mesma situação. Ainda não consegui resolver.
Mesma duvida aqui!
Excelente aula, fiz e estou com (Erro Exception: Cannot convert to int. ), como consigo converter?
Resolvi com o código
var itemId = parseFloat("1.969056297E9");
Logger.log('ID do item:', itemId);
var item = form.getItemById(itemId);
if (item) {
item.asListItem().setChoiceValues(range);
} else {
console.error('Item não encontrado com o ID:', itemId);
}
Você tem algum curso completo avançado? Estou precisando fazer um formulário para um recadastro de telefones funcionais da empresa. O formulário só vai perguntar duas coisas: 1) A matricula do funcionario e 2) o número do telefone funcional. Quando alguêm digitasse a matricula e o número fosse feito uma checagem com a lista de todas as matriculas e números da empresa numa planilha para poder validar. Isso seria para depois que o funcionário tiver a linha cortada não vir dizer que digitou alguma coisa errada.
Específico não, mas se quiser posso te ajudar a montar através do suporte premium. Para contratar entre em contato pelo email webdesignemfoco@gmail.com
todo mundo conseguiu?
o meu na parte 14:09 do video esta dando:
[20-12-08 16:28:20:510 VET] Exception: Não é possível converter "1.749198083E9" em "int".
at updateMcA(Código:18:8)
Fiz ontem o meu. Consegui executar corretamente mas somente ao enviar informações. Basta desmarcar a opção V8.
@@duartesouza273 onde esta isso?
@@FranciBahamult abra o projeto, vá em executar e desative o novo tempo de execução do app scripts com a tecnologia do chrome V8.
O meu dava errado até eu desativar e deu certo.
Espero ter ajudado.
@@duartesouza273 vou tentar aqui
@@duartesouza273 o problema que dá em desativar é que não podemos ver o registro de execução..., resolve um problema e cria outro
Gostaria de saber se existe a possibilidade de implementar duas situações:
1. No campo data aparecer um calendário para escolher a data, assim como no campo hora, aparecer um relógio para escolher as horas (para qualquer browser);
2. Introduzir campos de georreferenciamento (latitude / longitude).
Obrigado.
Também queria saber. Meus usuários precisam inserir muitas datas sempre reclamam que no navegador do desktop não aparece o calendário como aparece na versão mobile, o que atrasa o trabalho. Eu geralmente oriento que usem o emulador do próprio navegador, assim tem a opção do calendário e a praticidade de digitar no teclado do computador de mesa.
Aqui não dar certo aparece esta msg: ReferenceError: form is not defined (linha 8, arquivo "Cópia de Código")
Teria que ver seu código pra te ajudar. Orçamento para suporte: webdesignemfoco@gmail.com
@@WebdesignemFoco Quer dizer que vc vai cobrar para dar essa informação?
em
var form = FormApp
Tem que dar espaço antes e depois do sinal de igual?
Não há necessidade
@@WebdesignemFoco ok!