UDF – Extraer dirección de correo de texto
En caso de que desee un proceso que lo ayude a recuperar la dirección de correo electrónico de la cadena, este artículo es para usted. En este artículo, crearemos UDF para extraer la identificación del correo electrónico del texto.
Pregunta): Los datos que tengo contienen demasiada información en formato de texto. Quiero un código VBA que me ayude a extraer tantos identificadores de correo electrónico del texto para minimizar mis esfuerzos manuales.
Necesitamos seguir los pasos a continuación:
Haga clic en la pestaña Desarrollador Desde el grupo Código, seleccione Visual Basic
===
Ingrese el siguiente código en el módulo estándar:
Función ExtractEmailFromText (s As String) As String Dim AtTheRateSignSymbol As Long Dim i As Long
Dim TempStr como cadena
Const CharList como cadena = «[A-Za-z0-9 ._-]»
===
AtTheRateSignSymbol = InStr (s, «@»)
Si AtTheRateSignSymbol = 0 Entonces
ExtractEmailFromText = «»
Else
TempStr = «»
Para i = AtTheRateSignSymbol – 1 a 1 paso -1
Si Mid (s, i, 1) como CharList, entonces
TempStr = Mid (s, i, 1) y TempStr
Else
Salir para
Finalizar si
Siguiente i
Si TempStr = «» Entonces salga de la función
TempStr = TempStr & «@»
Para i = AtTheRateSignSymbol + 1 Para Len (s)
Si Mid (s, i, 1) como CharList, entonces
TempStr = TempStr y Mid (s, i, 1)
Else
Salir para
Finalizar si
Siguiente i
Finalizar si
Si es Derecha (TempStr, 1) = «.» Entonces TempStr = _
Izquierda (TempStr, Len (TempStr) – 1)
ExtractEmailFromText = TempStr
Finalizar función
-
En la celda B2, la fórmula es
* = ExtractEmailFromText (A2)
Obtendremos el resultado. Consulte la instantánea a continuación:
El código anterior extraerá la primera dirección de correo electrónico en caso de que haya más de 1 identificación de correo electrónico en una celda.
De esta manera, podemos recuperar el correo electrónico desde el texto.