
Para enviar correos a múltiples destinatarios desde una hoja de Excel, puedes utilizar una combinación de Excel y Outlook (si estás en un entorno Windows), o recurrir a un script en Google Sheets si estás trabajando en la nube. Aquí te mostraré cómo hacerlo en ambos casos:
Usando Excel y Outlook:
Sub EnviarCorreos()
Dim OutlookApp As Object
Dim Correo As Object
Dim Hoja As Worksheet
Dim i As Integer
' Inicializar Outlook
Set OutlookApp = CreateObject("Outlook.Application")
Set Hoja = ThisWorkbook.Sheets("NombreDeTuHoja") ' Cambia por el nombre de tu hoja
i = 2 ' Empieza desde la fila 2, asumiendo que la fila 1 tiene encabezados
' Loop hasta que se encuentre una fila vacía
Do While Hoja.Cells(i, 1).Value <> ""
Set Correo = OutlookApp.CreateItem(0)
With Correo
.To = Hoja.Cells(i, 1).Value
.Subject = Hoja.Cells(i, 2).Value
.Body = Hoja.Cells(i, 3).Value
.Send
End With
i = i + 1
Loop
' Limpiar
Set Correo = Nothing
Set OutlookApp = Nothing
End Sub
- Prepara tu Hoja de Excel:
- Asegúrate de que tu hoja de Excel tiene columnas específicas para la dirección de correo electrónico y cualquier otra información que quieras incluir en tus correos, como el nombre, asunto, y cuerpo del mensaje.
- Usar VBA en Excel:
- Abre Excel y presiona `Alt + F11` para abrir el Editor de VBA.
- Inserta un nuevo módulo desde el menú `Insertar` > `Módulo`.
- Copia y pega el siguiente código VBA en el módulo:
- Asegúrate de cambiar `»NombreDeTuHoja»` al nombre real de tu hoja de cálculo y ajustar las referencias de celda según sea necesario.
- Ejecuta el Script:
- Cierra el editor de VBA y vuelve a Excel.
- Presiona `Alt + F8`, selecciona `EnviarCorreos` y haz clic en `Ejecutar`.
Usando Google Sheets:
function enviarCorreos() {
var hoja = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var datos = hoja.getDataRange().getValues();
for (var i = 1; i < datos.length; i++) {
var email = datos[i][0]; // Asumiendo que la columna A es para los correos
var asunto = datos[i][1]; // Asumiendo que la columna B es para el asunto
var cuerpo = datos[i][2]; // Asumiendo que la columna C es para el cuerpo
MailApp.sendEmail(email, asunto, cuerpo);
}
}
- Prepara tu hoja de Google Sheets:
- Similar a Excel, ten una columna para correos, asunto y cuerpo del mensaje.
- Usar Google Apps Script:
- Abre tu hoja de cálculo de Google Sheets.
- Haz clic en `Extensiones` > `Apps Script`.
- Pega el siguiente código en el editor:
- Guarda el proyecto y asigna un nombre.
- Haz clic en el icono de reloj para crear un activador y selecciona la función `enviarCorreos`.
- Ejecuta el Script:
- Haz clic en el icono de play (▷) para ejecutar el script.
Nota:
- Asegúrate de tener los permisos necesarios para interactuar con el correo (Outlook o Gmail) desde estos scripts.
- En el caso de Google Apps Script, puede ser necesario autorizar permisos para enviar correos a través de tu cuenta de Google.
Este método te permitirá enviar correos electrónicos en masa desde una hoja de cálculo, automatizando el proceso de mensajería.
Conoce nuestros servicios



