Note: The other languages of the website are Google-translated. Back to English

¿Cómo enviar correos electrónicos masivos personalizados a una lista desde Excel a través de Outlook?

Por ejemplo, tengo el siguiente rango de datos en una hoja de trabajo que contiene las columnas Nombre, Dirección de correo electrónico, Código de registro, y ahora quiero enviar un mensaje con un saludo personalizado y su propio Código de registro a las direcciones de correo electrónico separadas en la columna A. Para resolver este problema, los siguientes métodos pueden ayudarlo.

doc enviar correos electrónicos personalizados 1

Envíe correos electrónicos masivos personalizados a una lista de Excel con la función de combinación de correspondencia

Envíe correos electrónicos masivos personalizados a una lista de Excel con código VBA

Envíe correos electrónicos masivos personalizados a una lista con diferentes archivos adjuntos utilizando Kutools para Excel


flecha azul burbuja derecha Envíe correos electrónicos masivos personalizados a una lista de Excel con la función de combinación de correspondencia

Con las palabras Unificación de correo función, puede terminar este trabajo rápida y fácilmente, por favor hágalo con el siguiente paso a paso:

1. Inicie un nuevo documento de Word en blanco y luego haga clic en correos > Seleccionar destinatarios > Usar una lista existente, ver captura de pantalla:

doc enviar correos electrónicos personalizados 2

2. En la Seleccionar fuente de datos ventana, elija el libro de trabajo que incluye el rango de datos que desea utilizar y haga clic en Abierta botón, ver captura de pantalla:

doc enviar correos electrónicos personalizados 3

3. En la venida Seleccionar tabla cuadro de diálogo, elija la hoja de trabajo con el rango de datos que necesita y luego haga clic en OK botón, ver captura de pantalla:

doc enviar correos electrónicos personalizados 4

4. Y el documento principal del mensaje de correo electrónico y su lista de direcciones se han conectado juntos, ahora puede editar el mensaje de texto y agregar marcadores de posición que indiquen dónde aparecerá la información única en cada mensaje.

(1.) Para insertar su nombre de saludo individual, haga clic en correos > Insertar campo de fusión > Nombre, el nombre personalizado se ha insertado en el mensaje y el nombre del campo está rodeado por «».

doc enviar correos electrónicos personalizados 5

(2.) Continúe escribiendo su mensaje e inserte el Código de registro en el lugar donde lo necesita, vea la captura de pantalla:

doc enviar correos electrónicos personalizados 6

5. Después de redactar el mensaje, puede hacer clic en Vista previa de resultados bajo el Correo para obtener una vista previa de los mensajes de correo electrónico y realizar cambios antes de completar la combinación.

6. Después de asegurarse de que no haya ningún problema, puede enviar los correos electrónicos a los destinatarios separados, haga clic en correos > Finalizar y fusionar > Enviar mensaje de correo electrónico, ver captura de pantalla:

doc enviar correos electrónicos personalizados 7

7. Entonces en el apareció Fusionar al correo electrónico cuadro de diálogo, realice las siguientes operaciones:

(1.) Desde el A lista desplegable, elija Dirección de correo electrónico columna;

(2.) Puede escribir el tema en el Asunto cuadro de texto de línea;

(3.) Desde el Enviar registros sección, seleccionar Todos.

doc enviar correos electrónicos personalizados 8

8. Y luego haz clic OK, los correos electrónicos se envían a destinatarios separados con su propio código de registro a la vez, después de enviar los correos electrónicos, puede ir a su Outlook para asegurarse de que los correos electrónicos se hayan enviado correctamente.


Envíe correos electrónicos personalizados a varios destinatarios con diferentes archivos adjuntos:

Con Kutools for Excel's Enviar correos electrónicos función, puede enviar rápidamente correos electrónicos personalizados a varios destinatarios con diferentes archivos adjuntos de Excel a través de Outlook según lo necesite. Al mismo tiempo, también puede enviar mensajes CC o CCO a una persona específica.       ¡Descargue y pruebe Kutools para Excel ahora!

doc enviar correos electrónicos personalizados 18 1


flecha azul burbuja derecha Envíe correos electrónicos masivos personalizados a una lista de Excel con código VBA

Excepto la función de combinación de correspondencia, el siguiente código de VBA también puede hacerle un favor, haga lo siguiente:

1. Mantenga pulsado el ALT + F11 llaves, y abre el Microsoft Visual Basic para aplicaciones ventana.

2. Hacer clic recuadro > Móduloy pegue el siguiente código en el Módulo Ventana.

Código VBA: envíe correos electrónicos masivos personalizados a una lista de Excel:

#If VBA7 And Win64 Then
    Private Declare PtrSafe Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" ( _
                         ByVal hwnd As LongPtr, ByVal lpOperation As String, _
                         ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, _
                         ByVal nShowCmd As Long) As LongPtr
#Else
    Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" ( _
                         ByVal hwnd As Long, ByVal lpOperation As String, _
                         ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, _
                         ByVal nShowCmd As Long) As Long
#End If
Sub SendEMail()
'update by Extendoffice 20160506
    Dim xEmail As String
    Dim xSubj As String
    Dim xMsg As String
    Dim xURL As String
    Dim i As Integer
    Dim k As Double
    Dim xCell As Range
    Dim xRg As Range
    Dim xTxt As String
    On Error Resume Next
    xTxt = ActiveWindow.RangeSelection.Address
    Set xRg = Application.InputBox("Please select the data range:", "Kutools for Excel", xTxt, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    If xRg.Columns.Count <> 3 Then
        MsgBox " Regional format error, please check", , "Kutools for Excel"
        Exit Sub
    End If
    For i = 1 To xRg.Rows.Count
'       Get the email address
        xEmail = xRg.Cells(i, 2)
'       Message subject
        xSubj = "Your Registration Code"
'       Compose the message
        xMsg = ""
        xMsg = xMsg & "Dear " & xRg.Cells(i, 1) & "," & vbCrLf & vbCrLf
        xMsg = xMsg & " This is your Registration Code "
        xMsg = xMsg & xRg.Cells(i, 3).Text & "." & vbCrLf & vbCrLf
        xMsg = xMsg & " please try it, and glad to get your feedback! " & vbCrLf
        xMsg = xMsg & "Skyyang"
'       Replace spaces with %20 (hex)
        xSubj = Application.WorksheetFunction.Substitute(xSubj, " ", "%20")
        xMsg = Application.WorksheetFunction.Substitute(xMsg, " ", "%20")
'       Replace carriage returns with %0D%0A (hex)
        xMsg = Application.WorksheetFunction.Substitute(xMsg, vbCrLf, "%0D%0A")
'       Create the URL
        xURL = "mailto:" & xEmail & "?subject=" & xSubj & "&body=" & xMsg
'       Execute the URL (start the email client)
        ShellExecute 0&, vbNullString, xURL, vbNullString, vbNullString, vbNormalFocus
'       Wait two seconds before sending keystrokes
        Application.Wait (Now + TimeValue("0:00:02"))
        Application.SendKeys "%s"
    Next
End Sub

3. Entonces presione F5 para ejecutar este código, y aparecerá un cuadro emergente para recordarle que seleccione el rango de datos que desea usar, vea la captura de pantalla:

doc enviar correos electrónicos personalizados 9

4. Y luego haz clic OK , los correos electrónicos se enviarán a direcciones separadas con su código de registro individual uno por uno, después de enviar los correos electrónicos, puede ir a su Outlook para asegurarse de que los correos electrónicos se hayan enviado correctamente.

Nota:: En el código anterior, puede cambiar el asunto o el cuerpo del mensaje según sus necesidades.


flecha azul burbuja derecha Envíe correos electrónicos masivos personalizados a una lista con diferentes archivos adjuntos utilizando Kutools para Excel

Si tiene Kutools for Excel, Con su Enviar correos electrónicos función, puede enviar rápidamente correos electrónicos personalizados a varios destinatarios con diferentes archivos adjuntos que necesite.

Kutools for Excel : con más de 300 prácticos complementos de Excel, prueba gratuita y sin límite en 30 días. 

Después de instalar Kutools for Excel, haz lo siguiente:

1. Hacer clic Kutools Más > Enviar correos electrónicos, ver captura de pantalla:

2. En la Enviar emiales cuadro de diálogo, seleccione el rango de datos que desea usar y luego especifique las direcciones de los destinatarios, los archivos adjuntos y el asunto que necesite, vea la captura de pantalla:

doc enviar correos electrónicos personalizados 9

3. En el cuadro de edición, inserte los nombres de los saludos individuales, elija Nombre de la lista desplegable y luego haga clic en Insertar marcador de posición para insertar los nombres en el mensaje, vea la captura de pantalla:

doc enviar correos electrónicos personalizados 9

4. Luego escriba el cuerpo de su mensaje en el cuadro que necesite, vea la captura de pantalla:

doc enviar correos electrónicos personalizados 9

5. Después de terminar el cuerpo del correo electrónico, elija el modo de envío que desee, puede enviar usando Outlook o su servidor especificado, vea screesnhot:

doc enviar correos electrónicos personalizados 9

Nota:: Si desea utilizar otro servidor, haga clic en Configuración del servidor saliente para configurar el modo de envío a su propio modo, consulte screesnhot:

doc enviar correos electrónicos personalizados 9

6. Por último, haz clic Enviar para enviar los correos electrónicos, después de completar, aparecerá un cuadro emergente para recordarle el estado del envío. ver screesnhot:

doc enviar correos electrónicos personalizados 9

Haga clic en Descargar y prueba gratuita de Kutools para Excel ahora.


Demostración: envíe correos electrónicos masivos personalizados a una lista desde Excel a través de Outlook

Kutools for Excel: con más de 300 prácticos complementos de Excel, prueba gratuita y sin límite en 30 días. ¡Descarga y prueba gratis ahora!

Artículo relacionado:

¿Cómo enviar correos electrónicos a varios destinatarios en una lista desde Excel a través de Outlook?


Las mejores herramientas de productividad de oficina

Kutools para Excel resuelve la mayoría de sus problemas y aumenta su productividad en un 80%

  • Reutilizar: Inserte rápidamente fórmulas complejas, gráficos y cualquier cosa que hayas usado antes; Cifrar celdas con contraseña; Crear lista de distribución y enviar correos electrónicos ...
  • Barra de súper fórmula (edite fácilmente varias líneas de texto y fórmulas); Diseño de lectura (leer y editar fácilmente un gran número de celdas); Pegar en rango filtrado...
  • Combinar celdas / filas / columnas sin perder datos; Contenido de celdas divididas; Combinar filas / columnas duplicadas... Prevenir celdas duplicadas; Comparar rangos...
  • Seleccione Duplicado o Único Filas; Seleccionar filas en blanco (todas las celdas están vacías); Super Find y Fuzzy Find en muchos libros de trabajo; Selección aleatoria ...
  • Copia exacta Varias celdas sin cambiar la referencia de la fórmula; Crear referencias automáticamente a varias hojas; Insertar viñetas, Casillas de verificación y más ...
  • Extraer texto, Agregar texto, Eliminar por posición, Quitar espacio; Crear e imprimir subtotales de paginación; Convertir entre contenido de celdas y comentarios...
  • Súper filtro (guardar y aplicar esquemas de filtros a otras hojas); Orden avanzado por mes / semana / día, frecuencia y más; Filtro especial en negrita, cursiva ...
  • Combinar libros y hojas de trabajo; Combinar tablas basadas en columnas clave; Dividir datos en varias hojas; Conversión por lotes de xls, xlsx y PDF...
  • Más de 300 potentes funciones. Compatible con Office/Excel 2007-2021 y 365. Compatible con todos los idiomas. Fácil implementación en su empresa u organización. Funciones completas Prueba gratuita de 30 días. Garantía de devolución de dinero de 60 días.
pestaña kte 201905

Office Tab lleva la interfaz con pestañas a Office y hace que su trabajo sea mucho más fácil

  • Habilite 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 de la misma ventana, en lugar de en nuevas ventanas.
  • ¡Aumenta su productividad en un 50% y reduce cientos de clics del mouse todos los días!
officetab parte inferior
Comentarios (47)
Aún no hay calificaciones. ¡Sé el primero en calificar!
Este comentario fue minimizado por el moderador en el sitio
Este código funcionó muy bien, muchas gracias por eso. Pero solo tengo un pequeño problema, estoy tratando de cambiar el código para predeterminar las celdas en las que quiero tomar los correos electrónicos y enviarlos debido a la forma en que creé mi archivo de Excel. Me gustaría cambiar el cuadro de selección para una determinada matriz de celdas. Ejemplo: corrija que todos mis datos estarán entre A2: C6, de modo que cuando ejecute la macro no necesito seleccionarla nuevamente. Muchas gracias por todo lo explicado arriba
Este comentario fue minimizado por el moderador en el sitio
¿Puede modificar el código para adjuntar varios archivos en el correo electrónico? Sería una gran ayuda. Gracias por adelantado.
Este comentario fue minimizado por el moderador en el sitio
¿Es posible agregar código para que también extraiga mi firma de correo electrónico normal? Además, cuando selecciono mi rango para enviar por correo electrónico, tengo mi hoja de cálculo de Excel filtrada, pero cuando ejecuto la macro, también extrae las filas ocultas.
Este comentario fue minimizado por el moderador en el sitio
¡Me gustaría saber sobre esto también!
Este comentario fue minimizado por el moderador en el sitio
cómo agregar cc en el código anterior
Este comentario fue minimizado por el moderador en el sitio
Gran manera

Solo necesito preguntarle sobre la posibilidad de cambiar el tema cada vez según el correo electrónico.
Este comentario fue minimizado por el moderador en el sitio
Hola Aziz,
Cuando aplica Kutools for Excel, puede ayudarlo a insertar los temas según los valores de las celdas, solo necesita seleccionar el encabezado de la columna del tema en el cuadro de diálogo como se muestra a continuación:

¡Pruébalo, espero que te pueda ayudar!
Este comentario fue minimizado por el moderador en el sitio
Hola Skyyang,

He estado tratando y tratando de que aparezca mi firma de correo electrónico, ¡pero parece que no puedo hacerlo bien! ¿Tienes un poco de código que pueda agregar para que esto suceda?
Este comentario fue minimizado por el moderador en el sitio
Publicación de locura, esta es falsa y no creas este contenido.
Este comentario fue minimizado por el moderador en el sitio
hola amigo,
esto es fantástico, necesito una ayuda. Necesito adjuntar un archivo pdf diferente a un correo electrónico diferente cada vez.
¿alguien puede ayudar por favor?
Este comentario fue minimizado por el moderador en el sitio
hola skyyang,
Necesito adjuntar un archivo pdf diferente para cada correo. ¿¿me puede ayudar por favor??
Este comentario fue minimizado por el moderador en el sitio
Hola Arvin,
Kutools puede ayudarlo a agregar múltiples archivos adjuntos diferentes al enviar correos electrónicos.
Primero debe insertar la ruta de los archivos adjuntos en las celdas y luego aplicar Kutools, vea la siguiente captura de pantalla:
Espero que te pueda ayudar, ¡gracias!
Este comentario fue minimizado por el moderador en el sitio
hola skyyang,
Utilicé su código a continuación para enviar correo y funciona perfectamente, ¿hay algo que pueda ayudarme a modificar en el código para enviar archivos adjuntos en PDF?
Necesito enviar más de 100 correos, por lo que es bastante difícil adjuntar archivos cada vez. ¿Kutools funciona según la ruta dada y envía correo automáticamente?
Este comentario fue minimizado por el moderador en el sitio
Oye,
¿Pueden ayudarme con la función adjunto.añadir? con su código VBA anterior, necesito enviar un archivo adjunto.
no puedo usar Kutools :(
Este comentario fue minimizado por el moderador en el sitio
¿Cómo cc personas en esto?
Este comentario fue minimizado por el moderador en el sitio
¿Qué sucede si tengo datos de muchos clientes y algunos clientes tienen más de 1 dato... y no quiero enviar correos electrónicos separados a los clientes, pero tal vez enviarlos en un formato tabular en el correo electrónico? ¿Cómo puedo enviar solo 1 correo electrónico a un cliente?
Este comentario fue minimizado por el moderador en el sitio
Hola Steven, encontraste una manera de hacer esto. Podemos ayudarte con un sencillo portal web en línea
Este comentario fue minimizado por el moderador en el sitio
Hola lo solucionaste?
Este comentario fue minimizado por el moderador en el sitio
Quiero saber cómo hacerlo. ¿Usted pude decirme?
Este comentario fue minimizado por el moderador en el sitio
¡¡Gracias!!

Pero he intentado hacer la prueba y no hay nada que enviar al correo electrónico. Tampoco hay mensaje de error... ¿Puedo saber qué pasó?
Este comentario fue minimizado por el moderador en el sitio
Tengo una lista de direcciones de correo electrónico en Excel a las que necesito enviar correos electrónicos. El asunto y el cuerpo están en celdas además de la dirección de correo electrónico y tengo el script a continuación, pero necesito enviar 100 correos electrónicos por 1 hora. ¿Cómo puedo complacer su apoyo?

Sub EnviarEm()
Dim i como entero, Mail_Object, Email_Subject, o como variante, lr como largo
lr = Cells(Rows.Count, "A").End(xlUp).Row
Establecer Mail_Object = CreateObject("Outlook.Application")
Para i = 2 Para lr
Con Mail_Object.CreateItem(o)
.Asunto = Rango("B" & i).Valor
.To = Rango("A" & i).Valor

.Cuerpo = Rango("C" & i).Valor
.adjuntos.Agregar (Hojas("Hoja1").Rango("H" & i).Texto)
.adjuntos.Agregar (Hojas("Hoja1").Rango("I" & i).Texto)
.archivos adjuntos.Agregar (Hojas("Hoja1").Rango("J" & i).Texto)
.archivos adjuntos.Agregar (Hojas("Hoja1").Rango("K" & i).Texto)
.Enviar

'.display 'deshabilitar mostrar y habilitar enviar para enviar automáticamente
End With
Siguiente i
MsgBox "Correo electrónico enviado con éxito", 64
Application.DisplayAlerts = False
Establecer Mail_Object = Nada
End Sub
Este comentario fue minimizado por el moderador en el sitio
Hola Hiba,
Nuestro Kutools for Excel's Enviar correos electrónicos puede ayudarlo a resolver su problema. Establezca las condiciones como se muestra en la siguiente captura de pantalla:
Con esta función, también puede aplicar la función CC, BCC y también puede insertar varios archivos adjuntos.
Este comentario fue minimizado por el moderador en el sitio
hola administrador


apakah metode ini bisa di lakukan pada word 2007 soalnya saya coba lakukan di file pdf nya tdk terkirim .. terimakasih
Este comentario fue minimizado por el moderador en el sitio
Por alguna razón, este código lo tiene donde envía todos los demás correos electrónicos de la lista. ¿Hay alguna razón por la que no envíe cada uno? Copié directamente el código que estaba arriba y no cambié nada.
Este comentario fue minimizado por el moderador en el sitio
El código VBA funciona bien, gracias, pero ¿cómo agregar Cc? Lo intenté y fracasé...
Este comentario fue minimizado por el moderador en el sitio
El código VBA funciona bien, gracias, pero ¿cómo agregar Cc? Probé con:


Dim xCc como cadena
luego
xCc = xRg.Cells(i, 9) (la dirección está en la novena columna)


y fracasó...
Este comentario fue minimizado por el moderador en el sitio
Hola Jean,

Para resolver su problema, aplique el siguiente código: (Nota: debe agregar la columna CC en la Columna C)

#Si VBA7 y Win64 Entonces
Función privada Declare PtrSafe ShellExecute Lib "shell32.dll" Alias ​​"ShellExecuteA" ( _
ByVal hwnd como LongPtr, ByVal lpOperation como cadena, _
ByVal lpFile como cadena, ByVal lpParameters como cadena, ByVal lpDirectory como cadena, _
ByVal nShowCmd As Long) As LongPtr
#Demás
Función de declaración privada ShellExecute Lib "shell32.dll" Alias ​​"ShellExecuteA" ( _
ByVal hwnd As Long, ByVal lpOperation As String, _
ByVal lpFile como cadena, ByVal lpParameters como cadena, ByVal lpDirectory como cadena, _
ByVal nShowCmd Siempre) Siempre
#Terminara si
Sub Enviar correo electrónico ()
Dim xEmail como cadena
Dim xSubj como cadena
Dim xMsg como cadena
Dim xURL como cadena
Dim i As Integer
Dim k como doble
Dim xCell como rango
Dim xRg como rango
Dim xTxt como cadena
Dim xCC como cadena
On Error Resume Next
xTxt = ActiveWindow.RangeSelection.Address
Establezca xRg = Application.InputBox ("Seleccione el rango de datos:", "Kutools for Excel", xTxt, , , , , 8)
Si xRg no es nada, salga de Sub
Si xRg.Columns.Count <> 4 Entonces
MsgBox "Error de formato regional, verifique", "Kutools para Excel"
Exit Sub
Si terminar
Para i = 1 Para xRg.Rows.Count
xEmail = xRg.Cells(i, 2)
xCC = xRg.Células(i, 3)
xSubj = "Su código de registro"
xMensaje = ""
xMsg = xMsg & "Estimado " & xRg.Cells(i, 1) & "," & vbCrLf & vbCrLf
xMsg = xMsg & "Este es su código de registro"
xMsg = xMsg & xRg.Cells(i, 4).Text & "." & vbCrLf & vbCrLf
xMsg = xMsg & " ¡Pruébelo y me alegra recibir sus comentarios! " & vbCrLf
xMsg = xMsg & "Skyyang"
xSubj = Aplicación.FunciónHojaDeTrabajo.Sustituto(xSubj, " ", "%20")
xMsg = Aplicación.FunciónHojaDeTrabajo.Sustituto(xMsg, " ", "%20")
xMsg = Aplicación.FunciónHojaDeTrabajo.Sustituto(xMsg, vbCrLf, "%0D%0A")
xURL = "mailto:" & xEmail & "?cc=" & xCC & "&subject=" & xSubj & "&body=" & xMsg
ShellExecute 0&, vbNullString, xURL, vbNullString, vbNullString, vbNormalFocus
Aplicación.Espere (Ahora + TimeValue("0:00:02"))
Aplicación.SendKeys "%s"
Siguiente
End Sub
Este comentario fue minimizado por el moderador en el sitio
He usado el código VBA mencionado anteriormente en "Enviar correos electrónicos masivos personalizados a una lista desde Excel con código VBA". Quería saber si podía enviar un correo electrónico a ciertas personas que necesitan una notificación en función de Excel, indicándome que envíe recordatorios a aquellos que tienen contratos próximos a vencer. No puedo obtener Excel para enviar los correos electrónicos y sé que es por el código en sí. ¿Puede alguien por favor ayudarme a resolver este problema?
Este comentario fue minimizado por el moderador en el sitio
Quiero enviar los correos electrónicos con una línea de asunto única, ¿cómo puedo hacer eso con este VBA?
Este comentario fue minimizado por el moderador en el sitio
Hola a todos!

Tengo una lista de correos electrónicos en una hoja y el borrador del correo electrónico en otra.
Necesito un código para enviar automáticamente el borrador de correo electrónico de la hoja 2 a cada 5 miembros de la lista proporcionada en la hoja 1.
Una vez que se envían los primeros 5, el código debe etiquetarlos como "Enviados" en una nueva columna dedicada y luego esperar 60 segundos antes de enviar el siguiente conjunto de 5 correos electrónicos.
El código debe ejecutarse hasta el final de toda la lista.

El código puede usar Outlook para enviar los correos desde el perfil predeterminado en Outlook.

Por favor, ayuda.

Avísame por si necesitas más aclaraciones
No hay comentarios publicados aquí todavía
Ver más
Deje sus comentarios
Publicar como invitado
×
Califica esta publicación:
0   Personajes
Ubicaciones sugeridas

Siganos

Copyright © 2009 - www.extendoffice.com. | Reservados todos los derechos. Energizado por ExtendOffice, | Mapa del Sitio
Microsoft y el logotipo de Office son marcas comerciales o marcas comerciales registradas de Microsoft Corporation en los Estados Unidos y / o en otros países.
Protegido por Sectigo SSL