Neste artigo veja passo-a-passo com exemplos de download como validar e-mail no Excel.
1. Introdução para Validar e-mail no Excel
No Excel muitas vezes nos deparamos com a necessidade de validar dados a fim de reduzir substancialmente o número de erros que podem ser causados. O recurso de validação de dados, presente na guia Dados, pode ser muito útil para aplicarmos regras que restrinjam a digitação de dados, fazendo com que consigamos manter um padrão.
Um padrão de dados que pode ter validação automática no Excel são os endereços de e-mail. Conhecidamente, temos um caractere obrigatório em todos os endereços de e-mails: o arroba (@). No entanto, um endereço de e-mail vai além de conter o arroba.
2. Estrutura de um endereço de e-mail: sintaxe
Além de haver o arroba, é necessário garantir este caractere esteja em uma posição intermediária, não sendo o primeiro e nem o último caracteres. Nenhum endereço de e-mail começa com o arroba, ou seja, é necessário haver algo antes. Este termo que precede o arroba é o nome de usuário. Além disso, o arroba deve ser sucedido por um trecho de caracteres, que é o domínio. No endereço de e-mail atendimento@guiadoexcel.com.br, a palavra atendimento é o nome de usuário e guiadoexcel.com.br é o domínio.
Para o domínio há ainda um requisito importante. Ele é dividido em duas partes, obrigatoriamente separadas por ponto. No domínio guiadoexcel.com.br, guiadoexcel é o provedor e com.br é o tipo do usuário.
Há ainda algumas restrições, como o número máximo de caracteres no nome de usuário e no domínio (64 e 48 respectivamente, o que limita um endereço de e-mail ao máximo de 113 caracteres) e os caracteres permitidos e proibidos (a exemplo do espaço, cujo código ASCII é 32), tanto para o nome do usuário, quanto para o domínio.
Existem documentações que tratam sobre o assunto e estabelecem regras para os endereços de e-mail, como a RFC 2822. Ela menciona que caracteres não UTF-8 ou ainda do japonês e russo não são aceitos. Ainda segundo a RFC 2822, caracteres numéricos de 0 a 9 e alfabéticos de a a z ou de A a Z são aceitos, bem como os caracteres especiais !#$%&’*/=?^_+-`{|}~. Isso implica dizer que o caractere de espaço (número 32 na tabela ASCII) não é aceito. Outros aspectos também precisam ser observados, como o fato de o ponto (.), mesmo sendo válido, não poder ocorrer consecutivamente mais de uma vez.
Analisando criteriosamente podemos encontrar controvérsias. O Google desde 2014 admite caracteres não latinos para a formação de endereços de e-mail, a citar caracteres do japonês. Há também padrões que aceitam também caracteres acentuados, o que torna válido, por exemplo, o endereço josé@email.com.
3. Validando o e-mail no Excel com fórmula
A ideia deste artigo é ilustrar a sintaxe mais primordial, elencando o arroba com o seu correto posicionamento, como também a divisão do domínio entre provedor e tipo do usuário (separação por ponto).
Vale destacar que estamos considerando apenas a sintaxe dos endereços e-mails, sem vislumbrar a real existência deles, o que envolveria eventualmente um processo de envio de mensagem para teste.
Inicialmente podemos pensar em uma validação complexa, localizando a posição do arroba. Isso exigiria:
a) o uso da função LOCALIZAR para identificar a existência do arroba, e, havendo, analisar se a posição por ele ocupada não é 1, ou seja, se o arroba não é o 1º caractere;
b) identificar se o arroba não é o último caractere, em que poderíamos testar comparando o resultado de LOCALIZAR com o resultado de NÚM.CARACT ou, ainda, apenas utilizar a função DIREITA para retornar o último caractere e verificar se trata-se de arroba.
No entanto, através da utilização de caracteres curinga, com aplicação semelhante às expressões regulares, conseguimos validar a sintaxe mais abrangente de endereços de e-mail, sem necessidade de fórmulas complexas. Acesse este artigo para mais informações sobre o uso de caracteres curinga no Excel (www.guiadoexcel.com.br/xxx). Neste artigo, veja como executar a validação de e-mail com VBA (www.guiadoexcel.com.br/xxx).
Podemos representar genericamente os endereços de e-mail, usando caracteres curinga, pelo texto ?*@?*.?*. Esta expressão implica considerar que há pelo menos um caractere antes do arroba e que após o arroba há pelo menos um caractere até que haja um ponto, seguido de pelo menos mais um caractere.
Para montar uma fórmula a fim de validar endereços de e-mail, utilizamos a função CORRESP, verificando se esta expressão consta no endereço de e-mail testado. Quando CORRESP resulta em número inteiro (que será 1), concluímos que a expressão foi localizada e o endereço de e-mail é válido de acordo com a sua sintaxe. Quando CORRESP resulta em erro (#N/D), concluímos que a expressão não foi localizada e o endereço de e-mail é inválido de acordo com a sua sintaxe.
Veja na imagem a seguir a fórmula inserida. Na última coluna apresentamos os motivos pelos quais alguns e-mails não foram válidos.
A fórmula inserida foi =SE(ÉNÚM(CORRESP(“?*@?*.?*”;B3;0));”Válido”;”Inválido”). Esta fórmula otimizada para verificar a existência de espaços ficaria assim adaptada: =SE(E(ÉNÚM(CORRESP(“?*@?*.?*”;B3;0));ÉERROS(LOCALIZAR(” “;B3)));”Válido”;”Inválido”).
Para criarmos uma validação de dados e verificar as digitações de e-mails, precisamos utilizar apenas o mesmo CORRESP da fórmula para a criação da validação personalizada com fórmulas. A imagem a seguir exibe a validação de dados aplicada.
A fórmula inserida foi apenas =CORRESP(“?*@?*.?*”;B3;0). Esta fórmula otimizada para verificar a existência de espaços ficaria assim adaptada: =E(CORRESP(“?*@?*.?*”;B3;0);ÉERROS(LOCALIZAR(” “;B3))). Convém destacar que a validação de dados se apresenta efetiva apenas para a digitação, não tendo efeito quando colamos dados nas células, ainda que possuam validação de dados aplicada.
Download Planilha Exemplo Validar e-mail com Fórmula Excel
Clique no botão abaixo para realizar o download da planilha de TextoDivisão Excel, com exemplo de dados: