Pergunte aqui
0

Fórmula que valide o campo e-mail.

perguntadas 2019-08-25 16:25:49 +0200

imagem do gravatar de Marcosaug

updated 2019-08-25 16:30:32 +0200

Faça uma fórmula que valide o campo e-mail e retorne "E-mail válido" ou "E-mail inválido". O e-mail é válido quando possuir o caractere "@" em seu conteúdo e inválido quando não houver.

editar alterar tag assinalar como ofensivo fechar mesclar Excluir

1 Resposta

0

respondidas 2019-08-26 12:55:21 +0200

imagem do gravatar de mrkalvin

na coluna D vc digita o email que deve ter essa sintase

texto "@" texto "." texto => fulano@hotmail.com

=SE(ÉNUM(CORRESP("*@*.???*";D1;0))=1;"E-mail válido";"E-mail inválido")
editar assinalar como ofensivo Excluir Link mais

Comentários

Ola @mrkalvin, ele quer para o Writer !

imagem do gravatar de Gilberto SchiavinattoGilberto Schiavinatto ( 2019-08-26 13:29:05 +0200 )editar

Não sei como está sendo feita a entrada do email no Writer. Em Macro do Basic pode usar esse procedimento abaixo, mas só verifica se exite o símbolo @ uma única vez.

para usar é só chamar: VerificarEmail(texto_do_email)

Sub VerificarEmail( myMail As String)
    If myMail <> "" Then
        checkMail = Split( myMail, "@" )
        arrayLen = UBound(checkMail) - LBound(checkMail) + 1

        If arrayLen = 2 Then
            msgbox("Email válido", 6, "Aviso")
        Else
            msgbox("Email inválido", 6+16, "Erro")
        End If
    End If
End Sub
imagem do gravatar de mrkalvinmrkalvin ( 2019-08-26 15:32:42 +0200 )editar

Assim verifica se existe o símbolo de "@" uma única vez. E também após o arroba verifica se existe o símbolo "." uma única vez

Sub VerificarEmail( myMail As String )
    Dim chk As Boolean
    Dim checkMail As Variant
    Dim arrayLen, arrayLen1 As Integer

    chk = False

    If myMail <> "" Then
        checkMail = Split( myMail, "@" )
        arrayLen = UBound(checkMail) - LBound(checkMail) + 1

        If arrayLen = 2 Then
            checkDomain = Split( checkMail(1), "." )
            arrayLen1 = UBound(checkDomain) - LBound(checkDomain) + 1

            If arrayLen1 = 2 Then
                chk = True
            End If

        End If

        If chk = True Then
            msgbox("Email válido", 6, "Aviso")
        Else
            msgbox("Email inválido", 6+16, "Erro")
        End If
    End If
End Sub
imagem do gravatar de mrkalvinmrkalvin ( 2019-08-26 17:00:41 +0200 )editar
Login/Registrar para responder

Ferramentas de perguntas

1 seguidor

Estatísticas

Perguntadas: 2019-08-25 16:25:49 +0200

Lidas: 20 vezes

Última atualização: Aug 26