Skip to main content

¿Cómo enviar un correo electrónico desde un rango específico de celdas en Excel?

Author: Siluvia Last Modified: 2025-08-06

En muchos casos, un rango específico de contenido en una hoja de cálculo de Excel puede ser útil en su comunicación por correo electrónico. En este artículo, presentaremos un método para enviar un correo electrónico con un rango especificado directamente en el cuerpo del correo desde Excel.

Enviar correo electrónico desde un rango específico de celdas en Excel
Enviar correo electrónico desde un rango específico de celdas con una herramienta increíble

Más tutoriales para enviar correos en Excel...


Enviar correo electrónico desde un rango específico de celdas en Excel

El siguiente código VBA puede ayudarte a copiar un rango y pegarlo directamente en el cuerpo de un correo de Outlook desde Excel. Por favor, sigue los siguientes pasos.

1. En la hoja de cálculo que contiene el rango que necesitas copiar, presiona simultáneamente las teclas "Alt + F11" para abrir la ventana "Microsoft Visual Basic para Aplicaciones".

2. En la ventana abierta de "Microsoft Visual Basic para Aplicaciones", haz clic en "Herramientas" > "Referencias", como se muestra en la captura de pantalla a continuación.

3. En el cuadro de diálogo "Referencias – VBAProject", busca y marca la opción "Biblioteca de objetos de Microsoft Outlook", y luego haz clic en el botón Aceptar.

A screenshot showing the References – VBAProject dialog box

4. Haz clic en "Insertar" > "Módulo", luego copia y pega el siguiente código VBA en la ventana del Módulo.

Código VBA: Enviar correo electrónico con un rango especificado en Excel

Sub Send_Email()
'Updated by Extendoffice 20200119
    Dim xRg As Range
    Dim I, J As Long
    Dim xAddress As String
    Dim xEmailBody As String
    Dim xMailOut As Outlook.MailItem
    Dim xOutApp As Outlook.Application    
    On Error Resume Next
    xAddress = ActiveWindow.RangeSelection.Address
    Set xRg = Application.InputBox("Please select range you need to paste into email body", "KuTools For Excel", xAddress, , , , , 8)
If xRg Is Nothing Then Exit Sub
Application.ScreenUpdating = False
    Set xOutApp = CreateObject("Outlook.Application")
    Set xMailOut = xOutApp.CreateItem(olMailItem)
    For I = 1 To xRg.Rows.Count
        For J = 1 To xRg.Columns.Count
            xEmailBody = xEmailBody & "  " & xRg.Cells(I, J).value
        Next
        xEmailBody = xEmailBody & vbNewLine
    Next
    xEmailBody = "Hi" & vbLf & vbLf & " body of message you want to add" & vbLf & vbLf & xEmailBody & vbNewLine
    With xMailOut
        .Subject = "Test"
        .To = "happy.xuebi@163.com"
        .Body = xEmailBody
        .Display
        '.Send
    End With
    Set xMailOut = Nothing
    Set xOutApp = Nothing
    Application.ScreenUpdating = True
End Sub

Notas:

  • 1). Cambia el cuerpo del correo en esta línea del script xEmailBody = "Hola" & vbLf & vbLf & "cuerpo del mensaje que deseas agregar" & vbLf & vbLf & xEmailBody & vbNewLine según sea necesario.
  • 2). Especifica el destinatario y el asunto del correo en esta línea dentro del código: (.To = happy.xuebi@163.com and .Subject = "prueba").

5. Presiona la tecla F5 para ejecutar el código. En el cuadro de diálogo emergente de Kutools para Excel, selecciona el rango que necesitas pegar en el cuerpo del correo y luego haz clic en el botón Aceptar. Ver captura de pantalla:

A screenshot of the dialog box for selecting the range to paste into the email body

6. Ahora se ha creado un correo electrónico con el destinatario, asunto, cuerpo y rango de Excel seleccionado especificados; haz clic en el botón "Enviar" para enviar este correo. Ver captura de pantalla mostrada.

A screenshot showing a created email with Excel range pasted in the email body

Nota: El código VBA solo funciona cuando usas Outlook como tu programa de correo.


Enviar correo electrónico desde un rango específico de celdas con una herramienta increíble

Si no usas Outlook y aún deseas enviar correos electrónicos directamente en Excel con datos de un rango especificado pegados dentro, te recomiendo encarecidamente la función "Enviar Correo Electrónico" de Kutools para Excel. Con esta función, solo necesitas configurar el servidor saliente de una dirección de correo electrónico y luego podrás enviar correos electrónicos directamente en Excel a través de esta dirección en el futuro.

Kutools para Excel ofrece más de 300 funciones avanzadas para simplificar tareas complejas, potenciando la creatividad y la eficiencia. Integrado con capacidades de inteligencia artificial, Kutools automatiza las tareas con precisión, haciendo que la gestión de datos sea sencilla. Información detallada de Kutools para Excel...  Prueba gratuita...

1. Primero, necesitas preparar una lista de correo con los campos necesarios.

  • Consejos: La lista de correo debe contener al menos 2 filas, y la primera fila debe ser los encabezados (Suponiendo que deseas enviar correos electrónicos a dos direcciones de correo en Excel, escribe estas dos direcciones de correo con el encabezado “Correo” como se muestra en la captura de pantalla a continuación).
  • A screenshot showing an Excel mailing list prepared for sending emails with Kutools
  • Alternativamente, puedes crear fácilmente una lista de correo con la función Crear Lista de Correo.

2. Selecciona el rango que agregarás al cuerpo del correo y presiona las teclas Ctrl + C para copiarlo.

3. Selecciona toda la lista de correo (incluidos los encabezados), haz clic en "Kutools Plus" > "Enviar Correos Electrónicos". Ver captura de pantalla:

A screenshot of the Send Emails button under the Kutools Plus menu in Excel

4. Luego aparecerá el cuadro de diálogo "Enviar Correos Electrónicos".

  • 4.1) Los elementos de la lista de correo seleccionada se rellenan en los campos correspondientes (puedes agregar más campos a la lista de correo según sea necesario);
  • 4.2) Haz clic en el cuadro del cuerpo del correo, presiona las teclas Ctrl + V para pegar los datos del rango seleccionado en él. Después de eso, agrega otro contenido según sea necesario;
  • 4.3) Desmarca la casilla "Enviar correos electrónicos a través de Outlook";
  • 4.4) Haz clic en el botón "Configuración del Servidor Saliente". Ver captura de pantalla:

    A screenshot of the Send Emails dialog box

5. Luego aparecerá el cuadro de diálogo "Configuración del Servidor Saliente (SMTP) – Nuevo Esquema". Completa la dirección de correo electrónico con sus configuraciones de servidor, especifica una carpeta para guardar todos los correos enviados después de marcar la casilla "Guardar correos enviados en", y luego haz clic en el botón Aceptar para guardar la configuración.

A screenshot of Outgoing Server (SMTP) Settings dialog

6. Cuando regrese al cuadro de diálogo "Enviar Correos Electrónicos", haz clic en el botón "Enviar" para enviar el correo.

Kutools para Excel - Cargado con más de 300 herramientas esenciales para Excel. ¡Disfruta de funciones de IA permanentemente gratis! ¡Descarga ahora!


Artículos relacionados:

Enviar correo electrónico a direcciones de correo especificadas en celdas en Excel
Supongamos que tienes una lista de direcciones de correo electrónico y quieres enviar mensajes de correo electrónico a estas direcciones en masa directamente en Excel. ¿Cómo lograrlo? Este artículo te mostrará métodos para enviar correos electrónicos a múltiples direcciones de correo especificadas en celdas en Excel.

Insertar firma de Outlook al enviar correo electrónico en Excel
Supongamos que deseas enviar un correo electrónico directamente en Excel, ¿cómo puedes agregar la firma predeterminada de Outlook en este correo? Este artículo proporciona dos métodos para ayudarte a agregar la firma de Outlook al enviar correo electrónico en Excel.

Enviar correo electrónico con varios archivos adjuntos en Excel
Este artículo trata sobre cómo enviar un correo electrónico a través de Outlook con varios archivos adjuntos en Excel.

Enviar correo electrónico si la fecha límite se ha cumplido en Excel
Por ejemplo, si la fecha límite en la columna C es menor o igual a 7 días (la fecha actual es 2017/9/13), entonces envía un recordatorio por correo electrónico al destinatario especificado en la columna A con el contenido especificado en la columna B. ¿Cómo lograrlo? Este artículo proporcionará un método VBA para tratarlo en detalle.

Enviar automáticamente correo electrónico basado en el valor de una celda en Excel
Supongamos que deseas enviar un correo electrónico a través de Outlook a un destinatario determinado basado en un valor de celda especificado en Excel. Por ejemplo, cuando el valor de la celda D7 en una hoja de cálculo es mayor que 200, se crea automáticamente un correo electrónico. Este artículo introduce un método VBA para que resuelvas rápidamente este problema.

Más tutoriales para enviar correos en Excel...

Las mejores herramientas de productividad para Office

🤖 Asistente de IA de Kutools: Revoluciona el análisis de datos basado 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 | Redondear...
Super BUSCARV: Búsqueda con múltiples criterios | Búsqueda de múltiples valores | Búsqueda en varias hojas | Coincidencia difusa....
Lista desplegable avanzada: Crea rápidamente listas desplegables | Lista desplegable dependiente | Lista desplegable con selección múltiple....
Administrador de columnas: Agregar un número específico de columnas | Mover columnas | Cambiar la visibilidad de columnas ocultas | Comparar rangos y columnas...
Funciones destacadas: Cuadrícula de enfoque | Vista de diseño | Barra de fórmulas mejorada | Administrador de libros y hojas de cálculo | Biblioteca de AutoTexto | Selector de fechas | Combinar Datos | Encriptar/Descifrar celdas | Enviar correo electrónico por lista | Super Filtro | Filtro especial (filtro negrita/cursiva/tachado...)...
Top15 conjuntos de herramientas:12 herramientas de texto (Agregar texto, Eliminar caracteres, ...) | Más de50 tipos de gráficos (Diagrama de Gantt, ...) | Más de40 fórmulas prácticas (Calcular edad basada en la fecha de nacimiento, ...) |19 herramientas de inserción (Insertar código QR, Insertar imagen desde ruta, ...) |12 herramientas de conversión (Convertir a palabras, Conversión de moneda, ...) |7 herramientas de combinar y dividir (Combinar filas avanzado, Dividir celdas, ...) | ... y mucho más
Utiliza Kutools en tu idioma preferido: ¡compatible con Inglés, Español, Alemán, Francés, Chino y más de40 idiomas adicionales!

Impulsa al máximo tu dominio de Excel con Kutools para Excel y experimenta una eficiencia sin precedentes. Kutools para Excel ofrece más de300 funciones avanzadas para potenciar la productividad y ahorrar tiempo.Haz clic aquí para obtener la función que más necesitas...


Office Tab aporta una interfaz de pestañas a Office y hace tu trabajo mucho más sencillo

  • Habilita la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
  • Abre y crea varios documentos en nuevas pestañas de la misma ventana, en vez de en nuevas ventanas.
  • ¡Aumenta tu productividad hasta un50% y reduce cientos de clics de ratón cada día!