Pergunta

Quero usar um Formulário Google para preencher uma planilha do Google.Um dos campos é o endereço de e-mail, e preciso validar isso na lista de e-mails da nossa organização - em outras palavras, forçar as pessoas a usarem endereços de e-mail válidos e existentes.

Nossa organização usa o Google Apps.O formulário será criado por um usuário que esteja em nossa organização e apenas endereços de e-mail de nossa organização/domínio serão considerados válidos.

Foi útil?

Solução

Você pode usar o Apps Script experimental Serviços de Domínio API.Veja como eu faria isso.

function isValidEmailInMyDomain(address) {
  var parts = address.split('@');
  if( parts.length != 2 )
    return false;
  if( parts[1] != UserManager.getDomain() )
    return false;
  try {
    UserManager.getUser(parts[0]);
    return true;
  } catch(doesNotExist) {
    return false;
  }
}

function testFunction() { //check the menu View > Logs
  Logger.log(isValidEmailInMyDomain('aEmailIn@yourDomain.com'));
}

Outras dicas

Agora você pode colocar uma Expressão Regular no campo:

Para E-MAIL:

[a-zA-Z0-9_\.\+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-\.]+

Endereço de email - o regex abaixo deve corresponder aos formatos de endereço de e-mail mais comuns, incluindo aliases do Gmail que aceitam o sinal “+”, mas não há solução perfeita.

[a-zA-Z0-9_\.\+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-\.]+

Você pode usar como:

enter image description here

Para mais Regex: Expressões regulares úteis para validar entradas no Formulários Google

Obrigado.

Esta não é uma pergunta de script do Google Apps, mas quando você cria o formulário, você pode selecionar uma caixa de seleção que diz "Colete automaticamente o nome de usuário do Respondent."

Você não precisa de um script.Simplesmente adicione uma validação de resposta à pergunta.No primeiro campo, escolha "Texto";No segundo campo, "contém";No terceiro campo, "@ 'Yourdomain'" - é isso!

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top