logo
languageESdown
menu

3 Maneras de Extraer Correo Electrónico de Texto en Excel

5 min

Si tiene un archivo de texto mezclado con direcciones de correo electrónico y cadenas de texto, y desea extraer las direcciones de correo electrónico, encontrará la respuesta en este artículo. A lo siguiente, le mostraré cómo extraer todas las direcciones de correo electrónico de Excel, con herramientas o fórmula de Excel, Excel VBA y Expresión regular (Regular Expression).

Regular Expressions (RegEx) in 100 Seconds

Opción#1: Fórmula de Excel

Para extraer correos electrónicos con Excel, normalmente puede seguir los siguientes pasos:

  1. Abra su archivo de Excel y seleccione la columna que contiene los datos de correo electrónico.
  2. Haz clic en la pestaña “Datos” en la cinta de opciones.
  3. En el grupo “Herramientas de datos”, seleccione “Texto en columnas”.
  4. En el asistente de texto en columnas, seleccione “Delimitado” y haga clic en “Siguiente”.
  5. Seleccione el delimitador que se utiliza para separar las direcciones de correo electrónico (por ejemplo, un punto y coma, una coma o una barra vertical) y haga clic en “Siguiente”.
  6. En el siguiente paso, puede seleccionar el formato de las columnas resultantes. Si solo quiere extraer las direcciones de correo electrónico, seleccione “Texto” y haga clic en “Finalizar”.
  7. Ahora verá que cada dirección de correo electrónico se ha separado en una celda individual.

Alternativamente, también puede usar fórmulas de Excel para extraer correos electrónicos de una celda. Puede usar la función “ENCONTRAR” para encontrar la ubicación del símbolo “@” en la dirección de correo electrónico y luego usar la función “IZQUIERDA” o “DERECHA” para extraer la parte de la dirección antes o después del símbolo “@”. Por ejemplo:

=TRIM(RIGHT(SUBSTITUTE(LEFT(A1,FIND (” “,A1&” “,FIND(“@”,A1))-1),” “, REPT(” “,LEN(A1))),LEN(A1))).

No se olvide de ajustar la referencia de la celda A1 a la celda que contiene la dirección de correo electrónico en tu hoja de cálculo. Esta fórmula es frustrante si tiene dificultades para usar Excel. Excel tiene reglas estrictas para escribir. Es frecuente que copie y pegue una fórmula compleja, pero Excel no la aceptará a menos que escriba la expresión en la celda. Otro problema asociado con la fórmula de Excel es que debe dedicar una cierta cantidad de tiempo para depurar la expresión, especialmente esto lleva mucho tiempo.

Opción#2: Excel VBA code

Para extraer direcciones de correo electrónico con Excel VBA, puede seguir siguientes pasos:

Paso 1: Presione las teclas “ALT + F11”, y lo llevará a Microsoft Visual Basic para la ventana de la aplicación

Paso 2: haga clic en Insertar> Módulo, copie y pegue lo siguiente en la ventana Módulo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
Sub ExtractEmail()
‘Update 20130829
Dim WorkRng As Range
Dim arr As Variant
Dim CharList As String
On Error Resume Next
xTitleId = “KutoolsforExcel”
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox(“Range”, xTitleId, WorkRng.Address, Type:=8)
arr = WorkRng.Value
CheckStr = “[A-Za-z0-9._-]”
For i = 1 To UBound(arr, 1)
For j = 1 To UBound(arr, 2)
extractStr = arr(i, j)
outStr = “”
Index = 1
Do While True
Index1 = VBA.InStr(Index, extractStr, “@”)
getStr = “”
If Index1 > 0 Then
For p = Index1 – 1 To 1 Step -1
If Mid(extractStr, p, 1) Like CheckStr Then
getStr = Mid(extractStr, p, 1) & getStr
Else
Exit For
End If
Next
getStr = getStr & “@”
For p = Index1 + 1 To Len(extractStr)
If Mid(extractStr, p, 1) Like CheckStr Then
getStr = getStr & Mid(extractStr, p, 1)
Else
Exit For
End If
Next
Index = Index1 + 1
If outStr = “” Then
outStr = getStr
Else
outStr = outStr & Chr(10) & getStr
End If
Else
Exit Do
End If
Loop
arr(i, j) = outStr
Next
Next
WorkRng.Value = arr
End Sub

Paso 3: Presione “OK” para continuar con el proceso

Paso 4: Seleccione el rango que le gustaría aplicar al código anterior. En este caso rango A1: A4

Este código recorre cada celda de la columna A y busca el símbolo “@” en cada cadena. Si encuentra el símbolo “@”, extrae la parte posterior del símbolo “@” y la coloca en la columna B de la misma fila. Como resultado, extraerá la parte posterior de cada dirección de correo electrónico y la colocará en la columna B. Recuerda ajustar la referencia de la columna A y B en el código según la ubicación real de tus datos.

Opción#3: Regular Expression

Si los datos los tiene complicado e desordenado, las expresiones regulares pueden ser una mejor opción que Excel en cuanto a extraer direcciones de correo electrónico. Las expresiones regulares son más flexibles que Excel en cuanto a la complejidad de los patrones de búsqueda que se pueden definir. Las expresiones regulares pueden buscar patrones complejos y específicos, mientras que Excel es más adecuado para patrones más simples.

Una expresión regular, también conocida como regex o regexp, es una secuencia de caracteres que define un patrón de búsqueda. Esta secuencia de caracteres es utilizada para buscar y manipular texto de manera eficiente y precisa. Las expresiones regulares se utilizan en una variedad de aplicaciones informáticas, desde procesamiento de texto y búsqueda de patrones en archivos de texto hasta la validación de formularios web y el análisis de datos. Permiten buscar patrones complejos, como una cadena que comienza con una letra mayúscula seguida de tres letras minúsculas y un número.

Las expresiones regulares utilizan una sintaxis especial para definir patrones de búsqueda. Por ejemplo, el patrón de búsqueda “^([A-Z][a-z]{2}[0-9])$” buscaría una cadena de texto que comienza con una letra mayúscula seguida de dos letras minúsculas y un número, y termina con el final de la línea.

La expresión regular puede ser muy difícil de aprender si no tienes ningún conocimiento de programación. Sin embargo, puede aplicar esta expresión simple para filtrar la dirección de correo electrónico.

[a-zA-Z0-9-_]{1,}@[a-zA-Z0-9-_]{1,}.[a-zA-Z]{1,}

Octoparse tiene una herramienta RegEx incorporada, que es muy conveniente para que las personas limpien los datos extraídos. Especialmente para los profesionales que no son de TI, es una ventaja adicional que no tienes que pasar tiempo para aprender Python. Con la herramienta de web scraping Octoparse, ahora es posible tener extracción de datos, limpieza y exportación todo en uno.

 

Paso 1: Abrir la aplicación Octoparse

Paso 2: Copie la cadena de texto en el Source Text. En este caso, la cadena de texto es:

This email address is valid: web@email.net and this email address is not valid web@email. Same as what_ever@public.com is a valid email address and address test@test. is not valid! OCTOPARSE@test.com is also valid

Paso 3: Copie y pegue la expresión en el cuadro “Expresión regular”

Paso 4: Elige la opción “Hacer coincidir todo” en la parte inferior y haz clic en “Hacer coincidir”

Posts populares

Explorar temas

Empiece a utilizar Octoparse enseguida

Descargar

Artículos relacionados