Instrucciones para enviar correos electrónicos desde hojas de cálculo Excel utilizando scripts VBA

El uso de scripts de VBA en Excel no requiere ningún conocimiento de programación. VBA lo ayuda a realizar muchas tareas avanzadas, como crear un informe de hoja de cálculo que contenga toda la información de la PC, enviar correos electrónicos directamente desde una hoja de cálculo ...

Para enviar correos electrónicos desde Microsoft Excel solo necesita unos pocos scripts simples. No tenga miedo de agregar esta función a su hoja de cálculo si realmente desea aprovechar al máximo el software de oficina de Excel.

Correo electrónico de Excel

Hay muchas razones por las que desea enviar un correo electrónico directamente a Microsoft Excel. Por ejemplo, sus empleados actualizan documentos y hojas de cálculo semanalmente, y desea recibir notificaciones por correo electrónico cuando se complete esa acción o, a veces, desea enviar por correo electrónico a todos los contactos en el mismo libro de trabajo. en ...

Debes haber pensado en usar un script de correo electrónico de Excel complicado, pero en realidad es muy simple. Este artículo lo guiará para aprovechar una característica que ha estado disponible durante mucho tiempo en Excel VBA, llamada Collaboration Data Objects (CDO) .

Instrucciones para enviar correos electrónicos desde hojas de cálculo Excel utilizando scripts VBA

CDO es un componente de mensajería utilizado en Windows desde las primeras versiones. Solía ​​llamarse CDONTS. Después del nacimiento de Windows 2000 y XP, "CDO para Windows 2000" lo reemplazó. Este componente está incluido en la instalación de VBA en Microsoft Word o Excel y está disponible para su uso en cualquier momento.

Usar este componente para enviar correos electrónicos en productos de Windows con VBA es extremadamente fácil. Por ejemplo, este artículo usa CDO en Excel para enviar correos electrónicos que contienen resultados en una celda.

Paso 1: crear una macro VBA

Primero, vaya a la pestaña Desarrollador Excel > haga clic en Insertar en el panel Controles , luego seleccione un botón de comando.

Instrucciones para enviar correos electrónicos desde hojas de cálculo Excel utilizando scripts VBA

Arrástrelo a esta hoja de trabajo, luego cree una nueva macro haciendo clic en Macros en la cinta Desarrollador.

Instrucciones para enviar correos electrónicos desde hojas de cálculo Excel utilizando scripts VBA

Cuando hace clic en el botón Crear , se abre el editor de VBA.

Agregue una referencia a la biblioteca de CDO navegando a Herramientas> Referencias en el editor.

Instrucciones para enviar correos electrónicos desde hojas de cálculo Excel utilizando scripts VBA

Desplácese hacia abajo en la lista hasta que vea Microsoft CDO para la Biblioteca de Windows 2000 . Marque la casilla de verificación y haga clic en Aceptar .

Instrucciones para enviar correos electrónicos desde hojas de cálculo Excel utilizando scripts VBA

Cuando haga clic en Aceptar , anote el nombre de la función donde se pega el script, porque lo necesitará más adelante.

Paso 2: establezca los campos CDO "De" y "Para"

Para hacer esto, primero debe crear objetos relacionados con el correo electrónico y configurar todos los campos de entrega de correo electrónico necesarios.

Recuerde que muchos campos pueden o no, pero se requieren desde y hasta.

Dim CDO_Mail As Object
Dim CDO_Config As Object
Dim SMTP_Config As Variant
Dim strSubject As String
Dim strFrom As String
Dim strTo As String
Dim strCc As String
Dim strBcc As String
Dim strBody As String

strSubject = "Resultados de la hoja de cálculo de Excel"
strFrom = "rdube02@gmail.com"
strTo = "rdube02@gmail.com"
strCc = ""
strBcc = ""
strBody = "Los resultados totales para este trimestre son:" & Str (Sheet1 .Células (2, 1))

Lo interesante es que puede crear cualquier cadena deseada para personalizar todo el mensaje de correo electrónico y asignarle la variable strBody.

Unir los contenidos de un mensaje de correo electrónico utilizando cadenas e insertar datos de cualquier hoja de cálculo de Microsoft Excel directamente en el correo electrónico (como se muestra arriba).

Paso 3: Configurar CDO para usar SMTP externo

El siguiente fragmento de código es donde configura CDO para usar cualquier servidor SMTP externo para enviar correos electrónicos.

Este ejemplo no configura SSL a través de Gmail, CDO puede reemplazar SSL pero está fuera del alcance de este artículo. Si necesita usar SSL, el código avanzado en Github puede ayudarlo.

Establecer CDO_Mail = CreateObject ("CDO.Message")
en caso de error GoTo Error_Handling

Establecer CDO_Config = CreateObject ("CDO.Configuration")
CDO_Config.Load -1

Establecer SMTP_Config = CDO_Config.Fields

Con SMTP_Config
.Item ("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp. gmail.com "
.Item (" http://schemas.microsoft.com/cdo/configuration/smtpauthenticate ") = 1
.Item (" http://schemas.microsoft.com/cdo/configuration/sendusername ") =" email@website.com "
.Item (" http://schemas.microsoft.com/cdo/configuration/sendpassword ") =" contraseña "
.Item (" http://schemas.microsoft.com/cdo/configuration/smtpserverport ") = 25
.Item (" http://schemas.microsoft.com/cdo/configuration/smtpusessl ") = Verdadero
.Actualizar
Finalizar con

Con CDO_Mail
Set .Configuration = CDO_Config
Finalizar con

Paso 4: completar la configuración de CDO

Ahora ha configurado su servidor SMTP para enviar correos electrónicos. Todo lo que tiene que hacer es completar los campos apropiados para el objeto CDO_Mail y emitir el comando Enviar .

Aquí se explica cómo hacerlo:

CDO_Mail.Subject = strSubject
CDO_Mail.From = strFrom
CDO_Mail.To = strTo
CDO_Mail.TextBody = strBody
CDO_Mail.CC = strCc
CDO_Mail.BCC = strBcc
CDO_Mail.Send

Error_Handling:
Si Err.Description <> "" Entonces MsgBox Err.Description

Ninguna de las ventanas emergentes o alertas de seguridad aparecen como suele ver al usar el objeto de correo electrónico de Outlook.

CDO simplemente pone los componentes de correo electrónico uno al lado del otro y usa los detalles de conexión del servidor para permitir el envío de información. Esta es la forma más fácil de combinar correos electrónicos en scripts de Microsoft Word o Excel VBA.

Para conectar el botón de comando a este script, acceda al editor de código y haga clic en Sheet1 para ver el código VBA de esa hoja de trabajo.

Escriba el nombre de la función donde pegó el script anterior.

Instrucciones para enviar correos electrónicos desde hojas de cálculo Excel utilizando scripts VBA

Esta es la información que recibe en la bandeja de entrada.

Instrucciones para enviar correos electrónicos desde hojas de cálculo Excel utilizando scripts VBA

Nota : Si recibe el mensaje de error El transporte no se pudo conectar al servidor , asegúrese de haber ingresado el nombre de usuario, la contraseña, el servidor SMTP y el número de puerto correctos en la línea de código que aparece en Con SMTP_Config .

Mejora y automatiza todo el proceso

Enviar correos electrónicos desde Excel con un solo botón es realmente seguro y conveniente. Si desea utilizar esta función con frecuencia, puede automatizarla.

Para hacer esto, necesita cambiar la macro. Vaya al Editor de Visual Basic, copie y pegue todo el código recopilado. A continuación, seleccione ThisWorkbook de la jerarquía del proyecto .

Desde los dos campos desplegables en la parte superior de la ventana de código, seleccione Libro de trabajo y haga clic en Abrir en el menú Métodos . Pegue la secuencia de comandos de correo electrónico anterior en Private Sub Workbook_Open () . Esta acción ejecutará la macro cada vez que abra el archivo de Excel.

Instrucciones para enviar correos electrónicos desde hojas de cálculo Excel utilizando scripts VBA

A continuación, abra el Programador de tareas . Utilizará esta herramienta para pedirle a Windows que abra automáticamente las hojas de cálculo a intervalos específicos. En ese momento, su macro se activará y enviará por correo electrónico.

Instrucciones para enviar correos electrónicos desde hojas de cálculo Excel utilizando scripts VBA

Seleccione Crear tarea básica ... en el menú Acción y siga las instrucciones hasta llegar a la pantalla Acción.

Seleccione Iniciar un programa y haga clic en Siguiente .

Instrucciones para enviar correos electrónicos desde hojas de cálculo Excel utilizando scripts VBA

Use el botón Examinar para buscar la ubicación de Microsoft Excel en la computadora o copie y pegue la ruta en el campo Programa / secuencia de comandos .

Luego ingrese la ruta al documento de Microsoft Excel en el campo Agregar argumentos .

Instrucciones completas y el horario que se realizará.

Debe probar esta función programando la acción en los próximos minutos y luego revisando la tarea después de ver que funciona de manera efectiva.

Nota : Es posible que deba ajustar la configuración del Centro de confianza para asegurarse de que la macro se ejecute de la siguiente manera:

Abra la hoja de cálculo y navegue hasta Archivo> Opciones> Centro de confianza .

Aquí, haga clic en Configuración del Centro de confianza . En la siguiente pantalla, seleccione Nunca mostrar información sobre contenido bloqueado .

Microsoft Excel es una herramienta extremadamente poderosa, pero aprender a usarlo a veces puede ser un desafío para muchos. Si desea dominar este software, necesita saber cómo usar VBA. No es facil

Sin embargo, con un poco de experiencia en VBA, puede automatizar tareas básicas en Microsoft Excel y tener más tiempo para enfocarse en tareas más importantes.

Espero que el artículo te sea útil. ¡Te deseo éxito!

Dejar un comentario

Cómo tirar tubos fluorescentes en Terrassa: dónde llevarlos y qué hacer si se rompen

Cómo tirar tubos fluorescentes en Terrassa: dónde llevarlos y qué hacer si se rompen

En Terrassa, los tubos fluorescentes deben llevarse a una deixalleria o punto autorizado. Consulta opciones, transporte seguro y qué hacer si se rompen.

Cómo tirar una lavadora en Santa Cruz de Tenerife: recogida, punto limpio y retirada al comprar otra

Cómo tirar una lavadora en Santa Cruz de Tenerife: recogida, punto limpio y retirada al comprar otra

Qué hacer con una lavadora vieja en Santa Cruz de Tenerife: recogida municipal con cita, Punto Limpio de Jagua, retirada por la tienda y preparación segura.

Cómo tirar una batería de litio en Elche: puntos limpios, reciclaje y precauciones

Cómo tirar una batería de litio en Elche: puntos limpios, reciclaje y precauciones

Guía práctica para desechar baterías de litio en Elche: dónde llevarlas, cómo prepararlas, qué hacer si están hinchadas y qué opciones municipales existen.

Cómo tirar una batería externa en Jerez de la Frontera: dónde llevarla y cuándo extremar precauciones

Cómo tirar una batería externa en Jerez de la Frontera: dónde llevarla y cuándo extremar precauciones

Guía práctica para desechar una batería externa o powerbank en Jerez de la Frontera: Punto Limpio, comercios, señales de riesgo y errores que conviene evitar.

Cómo tirar tubos fluorescentes en Córdoba: puntos y pasos seguros

Cómo tirar tubos fluorescentes en Córdoba: puntos y pasos seguros

Descubra dónde llevar tubos fluorescentes en Córdoba, cómo transportarlos sin romperlos y qué hacer si se quiebran en casa.

Cómo tirar una bombona de gas en Santa Cruz de Tenerife: opciones seguras y qué hacer en cada caso

Cómo tirar una bombona de gas en Santa Cruz de Tenerife: opciones seguras y qué hacer en cada caso

Guía práctica para devolver una bombona de butano o propano en Santa Cruz de Tenerife: proveedor, punto limpio, fugas y transporte seguro.

Cómo tirar un ordenador en Alcalá de Henares: opciones correctas y qué hacer con tus datos

Cómo tirar un ordenador en Alcalá de Henares: opciones correctas y qué hacer con tus datos

Cómo deshacerte de un ordenador en Alcalá de Henares: punto limpio, recogida del comercio, datos personales y pasos para entregarlo como RAEE.

Cómo tirar un frigorífico en Alcalá de Henares: recogida, punto limpio y entrega al comprar uno nuevo

Cómo tirar un frigorífico en Alcalá de Henares: recogida, punto limpio y entrega al comprar uno nuevo

Cómo deshacerse de un frigorífico en Alcalá de Henares: recogida municipal gratuita, Punto Limpio, retirada por la tienda y preparación segura del aparato.

Cómo tirar pilas en Murcia: puntos de recogida, Ecoparque y consejos

Cómo tirar pilas en Murcia: puntos de recogida, Ecoparque y consejos

Consulta dónde depositar pilas usadas en Murcia: tiendas, ecopuntos y Ecoparque de San Ginés, horarios, límites y precauciones para pilas dañadas.

Dónde tirar un frigorífico en España: opciones correctas y cómo comprobar que se recicla bien

Dónde tirar un frigorífico en España: opciones correctas y cómo comprobar que se recicla bien

Descubre dónde tirar un frigorífico en España: punto limpio, recogida municipal o retirada por la tienda, con criterios para hacerlo correctamente.