Guardar+ enviar por email

Hola
Es posible abrir un archivo en excel, ¿modificarlo y que al guardarlo lo envíe automáticamente a una dirección de e-mail?
Gracias por adelantado. Un saludo!

1 Respuesta

Respuesta
1
Sí, claro, es posible.
Sin embargo, reconsideraría si realmente quieres que el archivo se envíe automáticamente cada vez que se grabe.
En todo caso, tal vez te convenga tener un botón de macro para que lo acciones en el momento que quieras enviarlo.
Por otra parte devbes considerar que el archivo a enviar es el mismo que tienes activo. Al utilizar la macro enviará la última versión grabada en el disco (que puede ser distinta a la que tengas en pantalla). Por esa razón, verás que lo primero que hace la macro es grabar el archivo antes de iniciar el proceso e envío.
Activa el editor de Visual Basic (presiona Alt+F11), inserta un nuevo módulo ("Insertar", "Módulo") y pega el siguiente código:
Sub Send_Msg()
ActiveWorkbook.Save
Dim objOL As New Outlook.Application
Dim objMail As MailItem
Set objOL = New Outlook.Application
Set objMail = objOL.CreateItem(olMailItem)
'indica aquí dónde y cómo se llama el archivo a enviar.
AttachmentPath = "C:\TuDirectorio\TuArchivo.xls"
With objMail
.To = "[email protected] ; [email protected]" ' cambia a la lista de destinatarios de correo que desees (o a uno solo)
.Subject = "Aquí coloca el título de tu mensaje"
. Body = "Aquí coloca el mensaje que quieres que aparezca" 'Puedes capturarlo de una celda o tipearlo directamente.
'adjunta archivo
If Not IsMissing(AttachmentPath) Then
Set objOutlookAttach = .Attachments.Add(AttachmentPath)
Else
MsgBox "Problema con el path"
End If
.Send
End With
Set objMail = Nothing
Set objOL = Nothing
MsgBox "Mail enviado"
End Sub
En cualquier caso, también podrías tomar los datos de algunas celdas de la planilla, si es que estos cambiaran con alguna frecuencia.
Importante: Para que este código funcione, debe estar instalada la biblioteca de Outlook.
Dentro del Editor de Visual Basic, haz click en "Herramientas" | "Referencias"; busca y marca (si no lo estuviera) la biblioteca "Microsoft Outlook Object Library"
Bueno, Fransuar, espero que esto te ayude a completar tu proyecto.
Un abrazo!
Fernando
Me olvidé. En caso de que quieras insertar un botón, Una vez terminada la macro en el archivo, muestra la barra de herramientas de "Formularios" ("Ver" | "Barras de herramientas" | "Formularios".
De ella, toma el icono de "botón" y dibújalo en tu hoja. Al haber presionado el icono, el cursor del mouse se transformará en una cruz fina. Mantén presionado el botón derecho y arrástralo hasta donde desees dibujando el botón.
Cuando sueltes la tecla, automáticamente aparecerá la lista de macros disponibles de dónde podrás seleccionar el que quieres asociar. Simplemente, dale doble click.
También, puedes cambiar la vinculación de un botón con una macro, dando click derecho sobre él y eligiendo "Asignar macro". Otra vez, la lista de macros disponibles te permitirá realizar tal asignación.
De última, si insistes en que el archivo se envíe al guardar el archivo, házmelo saber.
Serías tan amable de cerrar y valorar esta pregunta.
Hay gente que no puede consultarme porque tengo muchas preguntas sin finalizar.
Muchas gracias por tu respuesta. Me ha sido de gran utilidad. Siento no haber finalizado la pregunta antes. Hasta hoy no he tenido comunicación. Gracias de nuevo.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas