
Para enviar correos electrónicos desde Excel basándote en condiciones lógicas, puedes usar Visual Basic for Applications (VBA) para automatizar el proceso. Aquí tienes un ejemplo básico de cómo hacerlo:
- Abrir el Editor de VBA:
- Abre Excel y presiona `Alt` + `F11` para abrir el Editor de Visual Basic para Aplicaciones.
- Insertar un Módulo Nuevo:
- Haz clic en `Insertar` > `Módulo` para crear un nuevo módulo donde escribirás tu código.
- Escribir el Código de VBA:
Copia y pega el siguiente código, haciendo los ajustes necesarios según tus necesidades (como el cuerpo del correo, el asunto, las direcciones de correo, etc.):
Sub EnviarCorreos()
Dim OutlookApp As Object
Dim OutlookMail As Object
Dim rng As Range
Dim i As Integer
' Establece el rango de celdas que deseas comprobar
Set rng = ThisWorkbook.Sheets("Hoja1").Range("A2:A10") ' Ajusta el rango y hoja según tus necesidades
' Inicializa Outlook
Set OutlookApp = CreateObject("Outlook.Application")
' Itera a través de cada celda en el rango
For i = 1 To rng.Rows.Count
If rng.Cells(i, 1).Value > 100 Then ' Cambia esta condición según tus necesidades
' Crea un nuevo correo
Set OutlookMail = OutlookApp.CreateItem(0)
With OutlookMail
.To = "destinatario@ejemplo.com" ' Cambia por la dirección del destinatario
.Subject = "Asunto del Correo"
.Body = "El valor en la celda " & rng.Cells(i, 1).Address & " es " & rng.Cells(i, 1).Value
' .Send ' Usa esto para enviar el correo automáticamente
.Display ' Usa esto para mostrar el correo; quita esta línea si usas .Send
End With
End If
Next i
' Libera el objeto Outlook
Set OutlookMail = Nothing
Set OutlookApp = Nothing
End Sub
- Ajusta el Código Según tus Necesidades:
- Cambia `»Hoja1″` y el rango `(«A2:A10»)` al nombre y rango adecuado de tu hoja de Excel.
- Modifica `.To`, `.Subject`, y `.Body` para personalizar el correo electrónico.
- Cambia la condición `If rng.Cells(i, 1).Value > 100 Then` para que se ajuste a tus criterios específicos.
- Ejecutar el Código:
- Guarda tu trabajo en el editor de VBA.
- Cierra el editor de VBA y regresa a Excel.
- Para ejecutar el macro, presiona `Alt` + `F8`, selecciona `EnviarCorreos` y haz clic en `Ejecutar`.
Nota: Este ejemplo utiliza Microsoft Outlook como el cliente de correo y puede pedirte permiso para enviar correos en tu nombre. Además, asegúrate de que tu configuración de seguridad de macros en Excel esté configurada para permitir la ejecución de macros.
Conoce nuestros servicios



