KutoolsforOffice — Una solución, cinco potentes herramientas.Lograr más con menos esfuerzo.Venta de marzo: 20 % de descuento

¿Cómo enviar un correo electrónico automáticamente en función del valor de una celda en Excel?

AutoraSiluvia Fecha de modificación

En Excel, puede automatizar el envío de correos electrónicos según condiciones específicas, como el valor de una celda determinada. Por ejemplo, podría configurar el sistema para que envíe automáticamente un mensaje a través de Outlook cuando el valor de la celda D7 supere 200. Este tutorial le muestra cómo utilizar código VBA (Visual Basic for Applications) para activar el envío de un correo electrónico en Outlook basado en el valor de una celda.

Enviar automáticamente un correo electrónico en función del valor de una celda con código VBA


Enviar automáticamente un correo electrónico en función del valor de una celda con código VBA

Siga estos pasos para enviar un correo electrónico en función del valor de una celda en Excel.

1. En la hoja de cálculo en la que desea enviar un correo electrónico en función del valor de una celda (en este caso, la celda D7), haga clic con el botón derecho en la pestaña de la hoja y seleccione Ver código en el menú contextual. Vea la captura de pantalla:

Una captura de pantalla del menú contextual en Excel que muestra la opción Ver código para una hoja de cálculo

2. En la ventana emergente de Microsoft Visual Basic para Aplicaciones, copia y pega el siguiente código VBA en la ventana de código de la hoja.

Código VBA: Enviar correo electrónico a través de Outlook en función del valor de una celda en Excel

Dim xRg As Range
'Update by Extendoffice 2018/3/7
Private Sub Worksheet_Change(ByVal Target As Range)
    On Error Resume Next
    If Target.Cells.Count > 1 Then Exit Sub
  Set xRg = Intersect(Range("D7"), Target)
    If xRg Is Nothing Then Exit Sub
    If IsNumeric(Target.Value) And Target.Value > 200 Then
        Call Mail_small_Text_Outlook
    End If
End Sub
Sub Mail_small_Text_Outlook()
    Dim xOutApp As Object
    Dim xOutMail As Object
    Dim xMailBody As String
    Set xOutApp = CreateObject("Outlook.Application")
    Set xOutMail = xOutApp.CreateItem(0)
    xMailBody = "Hi there" & vbNewLine & vbNewLine & _
              "This is line 1" & vbNewLine & _
              "This is line 2"
    On Error Resume Next
    With xOutMail
        .To = "Email Address"
        .CC = ""
        .BCC = ""
        .Subject = "send by cell value test"
        .Body = xMailBody
        .Display   'or use .Send
    End With
    On Error GoTo 0
    Set xOutMail = Nothing
    Set xOutApp = Nothing
End Sub

Notas:

1) En el código VBA,D7y valor > 200son la celda y el valor de celda en función de los cuales se enviará el correo electrónico.
2) Modifique el cuerpo del correo electrónico según sus necesidades en la línea xMailBodydel código.
3) Sustituya Dirección de correo electrónico por la dirección del destinatario Dirección de correo electrónico en la línea .To = «Dirección de correo electrónico».
4) Especifique también los destinatarios en Cc y Cco según sus necesidades en las secciones .CC = “”y Bcc = “”.
5) Por último, cambie el Asunto del correo electrónico en la línea .Subject = «prueba de envío por valor de celda».

3. Pulse simultáneamente las teclas Alt+Q para cerrar la ventana de Microsoft Visual Basic para Aplicaciones.

A partir de ahora, cuando el valor introducido en la celda D7 sea mayor que 200, se creará automáticamente en Outlook un correo electrónico con los destinatarios y el cuerpo especificados. Puede hacer clic en el botón Enviar para enviar este correo electrónico. Vea la captura de pantalla:

Una captura de pantalla que muestra un borrador de correo electrónico en Outlook creado automáticamente a partir del valor de una celda de Excel

Notas:

1. El código VBA solo funciona si utiliza Outlook como su cliente de correo electrónico.

2. Si el dato introducido en la celda D7 es un valor de texto, también se abrirá la ventana de correo electrónico.


Envíe correos electrónicos fácilmente a través de Outlook basándose en los campos de los Lista de correos electrónicos creados en Excel:

La utilidad Enviar correos electrónicos de Kutools para Excel permite a los usuarios enviar mensajes a través de Outlook basándose en la lista de correos electrónicos creada en Excel.

Una captura de pantalla de la interfaz de la utilidad Enviar correos electrónicos de Kutools for Excel

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


Artículos relacionados:

Las mejores herramientas de productividad para Office

🤖KUTOOLS AI Asistente: Revolucione Análisis de datos basándose en:Ejecución Inteligente   |  Generar código|  Crear fórmulas personalizadas  |  Analizar datos y generar gráficos|  Invocar Funciones mejoradas
Funciones populares:Buscar, resaltar o Marcar duplicados   |  Eliminar filas en blanco   |  Combinar Columnas o celdas sin perder datos   |   Redondeo sin usar fórmulas...
Super BUSCARV:Búsqueda vertical (VLookup) con múltiples criterios  |  Búsqueda vertical (VLookup) con múltiples valores  |   Búsqueda vertical (VLookup) entre varias hojas   |   Coincidencia difusa....
Lista desplegable avanzada:Crear rápidamente una lista desplegable   |  Lista desplegable dependiente   |  Lista desplegable de selección múltiple....
Gestor de columnas:Añadir un número específico de columnas|Mover columnas|Alternar el estado de visibilidad de columnas ocultas|Comparar rangos y columnas...
Funciones destacadas:Cuadrícula de enfoque   |  Vista de diseño   |Barra de fórmulas mejorada   | Gestor de libros y hojas   |  Biblioteca de recursos(Texto automático)|  Selector de Fecha   |  Combinar Hojas de Cálculo  |  Cifrar/Descifrar celdas   | Enviar correos electrónicos desde una lista   |  Super Filtro   |   Filtro especial(Filtrar celdas con fuente en negrita/cursiva/tachado...) ...
Principales conjuntos de herramientas 15:12 Herramientasde texto(Agregar texto,Eliminar caracteres específicos, ...)|   50+Tiposde gráfico(Diagrama de Gantt, ...)|   40+ Fórmulas prácticas(Calcular la edad basada en la fecha de nacimiento, ...)|   19 Herramientasde inserción(Insertar Código QR,Insertar imagen desde ruta, ...)|   12 Herramientasde conversión(Convertir a palabras,Conversión de moneda, ...)|   7 Herramientasde combinación y división(Combinar filas avanzado,Dividir celdas, ...)|...y muchas más
Use Kutools en su idioma preferido: compatible con inglés, español, alemán, francés, chino y 40+ más idiomas.¡

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.

ExcelWordOutlookTabsPowerPoint
  • 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