Extraer Extraer direcciones de correo electrónico de una cadena de texto en Excel: una guía completa
Al trabajar con datos importados o cadenas de texto mixtas en Excel, es posible que necesite extraer direcciones de correo electrónico de forma rápida y precisa. Ya sea que maneje una lista donde las direcciones de correo electrónico aparecen combinadas con otro texto o que deba extraer correos electrónicos de un conjunto de datos extenso, existen varios métodos eficaces para lograrlo. Esta guía le explica distintas técnicas para extraer direcciones de correo electrónico de cadenas de texto, incluyendo el uso de Relleno Flash, Kutools para Excel, fórmulas, funciones definidas por el usuario y código VBA. Cada método ofrece ventajas específicas según sus necesidades y la complejidad de los datos.

Extraer direcciones de correo electrónico de una cadena de texto con Relleno Flash
La función Relleno Flash de Excel proporciona una forma rápida y eficaz de formatear o extraer datos automáticamente en función de patrones que usted defina. En esta sección, le mostraremos cómo utilizar Relleno Flash para Extraer direcciones de correo electrónico de una columna con datos mixtos. Este método resulta especialmente útil cuando se trabaja con listas que contienen diversos tipos de texto y solo necesita extraer los Dirección de correo electrónico.
- Haga clic en la primera celda de la columna adyacente (por ejemplo, B2) donde desee que aparezca la dirección de correo electrónico.
- Escriba manualmente el Dirección de correo electrónico de la fila correspondiente en la columna A y, a continuación, pulse Intro.Por ejemplo, si A2 contiene «ana varela@gmail.com», escriba « ana varela@gmail.com » en B2.

- Manténgase en la celda B3 y pulse «Ctrl + E» para activar Relleno Flash.Excel rellenará automáticamente el resto de la columna B con el Extraer direcciones de correo electrónico.

- Relleno Flash está disponible en Excel 2013 y versiones posteriores. Si usa Excel 2010 o una versión anterior, es posible que esta función no esté disponible.
- Asegúrese de que las celdas en las que vaya a aplicar Relleno Flash estén formateadas como 'Texto' para evitar problemas de formato no deseados.
Extraiga en lote Extraer direcciones de correo electrónico de una cadena de texto con Kutools con un solo clic
Cuando se trata de Extraer direcciones de correo electrónico de un conjunto de datos, la función «Extraer direcciones de correo electrónico» de Kutools para Excel ofrece una alternativa potente al Relleno Flash de Excel. Mientras que Relleno Flash requiere un enfoque manual para reconocer patrones, Kutools para Excel automatiza el proceso con un solo clic, lo que lo convierte en la opción ideal para manejar grandes volúmenes de datos de forma eficiente. Esta herramienta no solo simplifica el proceso de extracción, sino que también garantiza precisión y rapidez, especialmente al trabajar con conjuntos de datos complejos o inconsistentes.
Después de descargar e instalar Kutools para Excel, siga estos pasos:
- Seleccione el rango de celdas del que desea extraer direcciones de correo electrónico y, a continuación, vaya a «Kutools» > «Texto» > «Extraer direcciones de correo electrónico».
- En el cuadro de diálogo emergente «Extraer direcciones de correo electrónico», seleccione una celda para mostrar la dirección de correo electrónico y haga clic en Aceptar.

Resultado
Entonces, todas las direcciones de correo electrónico de cada celda del rango seleccionado se extraen inmediatamente.

Kutools para Excel: potencie Excel con más de 300 herramientas esenciales, agilice y simplifique su trabajo, y aproveche las funciones de IA para un procesamiento de datos más inteligente y una mayor productividad.Consígalo ahora
Extraer direcciones de correo electrónico de una cadena de texto con fórmula
A continuación, le presentamos una fórmula avanzada para extraer exclusivamente las direcciones de correo electrónico del texto en Excel. Siga estos pasos:
1. En la celda adyacente B1, introduce la siguiente fórmula:
=TRIM(RIGHT(SUBSTITUTE(LEFT(A1,FIND (" ",A1&" ",FIND("@",A1))-1)," ", REPT(" ",LEN(A1))),LEN(A1))) 
2. Pulse la tecla Intro, seleccione la celda B1 y arrastre el controlador de relleno hasta el rango en el que desee aplicar esta fórmula. Así, las direcciones de correo electrónico del rango se habrán extraído de la cadena de texto. Vea la captura de pantalla:

Notas:
1. La puntuación que sigue a la dirección de correo electrónico también se extraerá.
2. Si las celdas no contienen la dirección de correo electrónico, la fórmula mostrará valores de error.
3. Si hay más de una dirección de correo electrónico en una celda, la fórmula extraerá únicamente la primera.
Extraer direcciones de correo electrónico de una cadena de texto con función definida por el usuario
Además de la fórmula anterior, una función definida por el usuario también puede ayudarle a extraer las direcciones de correo electrónico de la cadena de texto.
1. Mantenga pulsadas las teclas «ALT + F11» para abrir la ventana de Microsoft Visual Basic para Aplicaciones.
2. Haga clic en «Insertar» > «Módulo» y pegue la siguiente macro en la ventana del módulo.
Function ExtractEmailFun(extractStr As String) As String
'Update by extendoffice
Dim CharList As String
On Error Resume Next
CheckStr = "[A-Za-z0-9._-]"
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
ExtractEmailFun = OutStr
End Function 3. A continuación, guarde el código e introduzca la fórmula =ExtractEmailFun(A1) en una celda adyacente vacía. Consulte la captura de pantalla:

4. Pulse la tecla Intro, seleccione la celda B1 y arrastre el controlador de relleno hasta el rango donde necesite aplicar la fórmula. Así, todas las direcciones de correo electrónico se extraerán automáticamente del texto de las celdas. Vea la captura de pantalla:

Notas:
1. Si las celdas no contienen dirección de correo electrónico, aparecerán vacías.
2. Si hay más de una dirección de correo electrónico en una celda, se extraerán todas.
Extraer direcciones de correo electrónico de una cadena de texto con código VBA
Si las fórmulas anteriores le parecen complicadas, el siguiente código VBA le permitirá extraer direcciones de correo electrónico rápidamente.
1. Mantenga pulsadas las teclas «ALT + F11» para abrir la ventana de Microsoft Visual Basic para Aplicaciones.
2. Haga clic en «Insertar» > «Módulo» y pegue la siguiente macro en la ventana del módulo.
VBA: Extraer direcciones de correo electrónico de una cadena de texto
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 3. Pulse la tecla F5 para ejecutar este código y, en el cuadro de diálogo emergente, seleccione el rango al que desea aplicar el código VBA. Vea la captura de pantalla:

4. Haga clic en Aceptar y las direcciones de correo electrónico se extraerán de las cadenas de texto seleccionadas. Vea las capturas de pantalla:
![]() | ![]() | ![]() |
Notas:
1. Si las celdas no contienen una dirección de correo electrónico, aparecerán vacías.
2. Se extraerán todos los correos electrónicos si hay más de una dirección de correo electrónico en una celda.
3. Los correos electrónicos extraídos sobrescribirán los datos originales, por lo que le recomendamos hacer una copia de seguridad antes de continuar.
Demostración: Extraer direcciones de correo electrónico de una cadena de texto con Kutools para Excel
Artículo relacionado:
¿Cómo extraer los dominios de varias direcciones de correo electrónico en Excel?
Las mejores herramientas de productividad para Office
Potencie sus habilidades en Excel con Kutools para Excel y experimente una eficiencia como nunca antes.Kutools para Excel ofrece más de 300 funciones avanzadas para aumentar su productividad y Ahorrar tiempo.Haga clic aquí para obtener la función que más necesita...
Office Tab aporta una interfaz con pestañas a Office y hace que su trabajo sea mucho más fácil
- Active la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
- Abra y cree varios documentos en nuevas pestañas dentro de la misma ventana, en lugar de hacerlo en ventanas separadas.
- ¡Aumente su productividad en un 50 % y elimine cientos de clics del ratón cada día!
Todos los complementos de Kutools en un solo instalador.
Kutools for Office es la suite que incluye complementos para Excel, Word, Outlook y PowerPoint, además de Office Tab Pro, ideal para equipos que trabajan en distintas aplicaciones de Office.
- Suite integral— complementos para Excel, Word, Outlook y PowerPoint + Office Tab Pro
- Un instalador, una licencia— configuración en minutos (compatible con MSI)
- Rendimiento mejorado en conjunto— productividad optimizada en todas las aplicaciones de Office
- Prueba gratuita de 30 días con todas las funciones— sin registro ni tarjeta de crédito
- La mejor relación calidad-precio— ahorre frente a la compra individual de complementos





