Excel planilha vba emails funcoes extraem endereco emails

Sáb, 29 de Outubro de 2011 09:57 Expedito Marcondes
Imprimir

Saberexcel - o site de quem precisa aprender macros microsoft excel vba

Essas Funções do Aplicativo Microsoft Excel VBA, retornam um endereço de e-mail, observem que as funções personalizadas buscam por determinado caracter em algum lugar em uma frase, note que na primeira função busca o caracter (- ) ifem, quanto no segundo exemplo de função busca pelo caracter (@) Arroba. Os exemplos abaixo são muito úteis para quem lida com muitos nomes de emails que talvez estejam em meio a determinadas frases:
Espero que os exemplos de Função possam lhes ser útil. Fique com Deus, Expedito Marcondes

Essa função extrai uma determinada palavra de uma frase baseado em algum caracteres especificado no Macro por exemplo a frase:
CELULA (J2) = "Aprenda Microsoft excel vba, sozinho, praticando com os produtos didáticos saberexcel  -
[email protected] - "
Observe que nesta frase a função irá buscar o Caracter ( - )  traço (ifem)), e retornará o email.
[email protected]
'- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -'
Function ExtrairElementos
(Texto, n, Separator) As String
         ExtrairElementos = Split(Application.Trim(Texto), Separator)(n - 1)
End Function

USO CORRETO DA FUNÇÃO:
=ExtrairElementos(J2;2;"-") 



OUTRA FUNÇÃO FUNÇÃO EXTRAI TEXTOS(EMAILS) DEPENDENDO DO CARACTER ESCOLHIDO.
'- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Observe bem, se voce tem uma frase como esta (apenas exemplo), a função ira busca pelo caracter
'@' e retornará o endereço de email contido na frase. (muito útil para quem trabalha com muitos emails)
'- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
USO CORRETO DA FUNÇÃO:
Celula D7  = 'Aprenda macros, fórmulas e funções
[email protected], produtos didáticos saberexcel'
Fórmula usada:   SE(D7="";"";SE( ExtrairENDERECOEMAIL(D7)="";"NÃO HÁ EMAILS"; ExtrairENDERECOEMAIL(D7)))
veja que que a função tem duas condições, porém poderá usar somente uma:   
'=ExtrairENDERECOEMAIL(D7).
'- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Function ExtrairENDERECOEMAIL(s As String) As String
    Dim LocalizacaoARROBA As Long
    Dim vCONTADOR As Long
    Dim textoTEMP As String
    Const listaCARACTER As String = "[A-Za-z0-9._-]"
   
    'Obtendo a localização do caracter
'@' arroba
    LocalizacaoARROBA = InStr(s, "@")
    If LocalizacaoARROBA = 0 Then
        ExtrairENDERECOEMAIL = "" 'not found
    Else
        textoTEMP = ""
      
        'Obtendo o primeiro endereço de email
        For vCONTADOR = LocalizacaoARROBA - 1 To 1 Step -1
            If Mid(s, vCONTADOR, 1) Like listaCARACTER Then
                textoTEMP = Mid(s, vCONTADOR, 1) & textoTEMP
            Else
                Exit For
            End If
        Next vCONTADOR
        If textoTEMP = "" Then Exit Function
       
        'obtendo o segundo endereco de email
        textoTEMP = textoTEMP & "@"
        For vCONTADOR = LocalizacaoARROBA + 1 To Len(s)
            If Mid(s, vCONTADOR, 1) Like listaCARACTER Then
               textoTEMP = textoTEMP & Mid(s, vCONTADOR, 1)
            Else
               Exit For
            End If
        Next vCONTADOR
       
    End If

    'Remover ponto a direita se por ventura existir

    If Right(textoTEMP, 1) = "." Then textoTEMP = _
       Left(textoTEMP, Len(textoTEMP) - 1)
       ExtrairENDERECOEMAIL = textoTEMP
End Function


 
Aprenda tudo sobre planilhas do Aplicativo Microsoft Excel VBA(Visual Basic Application), sozinho, com baixo custo, praticando com os produtos didáticos Escola Saberexcel VBA Estudos® - Treinamentos com Macros, Fórmulas e Funções.
http://www.microsoftexcel.com.br
e saberexcel.com
 




   Baixe o exemplo de planilha contendo as funções acima:
Excel planilha vba emails funcoes extraem endereco email

 


Tags:
Última atualização em Sáb, 29 de Outubro de 2011 10:24