H o l a:
Prueba con la siguiente macro.
Sub mensaje()
SendNotesMail "Prueba", "[email protected]", "Hola", "C:\trabajo\varios\archivo.xlsx"
End Sub
Cambia en la macro "[email protected]", por el correo destinatario de prueba.
También cambia "C:\trabajo\varios\archivo.xlsx", por la ruta y el nombre del archivo que vas a enviar.
También pon la siguiente macro en el mismo módulo:
Public Sub SendNotesMail(Subject As String, Recipient As String, BodyText As String, attachment As String)
Dim Maildb As Object
Dim UserName As String
Dim MailDbName As String
Dim MailDoc As Object
Dim AttachME As Object
Dim Session As Object
Dim EmbedObj As Object
Dim Recip(10) As Variant 'Si hay varios destinatarios
Dim SaveIt As Boolean
Dim WasOpen As Integer
SaveIt = True
Set Session = CreateObject("Notes.NotesSession")
UserName = Session.UserName
MailDbName = Left$(UserName, 1) & Right$(UserName, (Len(UserName) - InStr(1, UserName, " "))) & ".nsf"
Set Maildb = Session.GETDATABASE("", MailDbName)
If Maildb.IsOpen = True Then
WasOpen = 1
Else
WasOpen = 0
Maildb.OPENMAIL
End If
Set MailDoc = Maildb.CREATEDOCUMENT
MailDoc.Form = "Memo"
MailDoc.sendto = Recipient
MailDoc.Subject = Subject
MailDoc.body = BodyText
MailDoc.SAVEMESSAGEONSEND = SaveIt
If attachment <> "" Then
Set AttachME = MailDoc.CREATERICHTEXTITEM("Attachment")
Set EmbedObj = AttachME.EMBEDOBJECT(1454, "", attachment, "Attachment")
MailDoc.CREATERICHTEXTITEM ("Attachment")
End If
MailDoc.PostedDate = Now()
MailDoc.SEND 0, Recipient
'Limpiar
Range("A1").Select
Application.CutCopyMode = False
Set Maildb = Nothing
Set MailDoc = Nothing
Set AttachME = Nothing
Set EmbedObj = Nothing
If WasOpen = 1 Then
Set Session = Nothing
ElseIf WasOpen = 0 Then
Session.Close
Set Session = Nothing
End If
MsgBox "El mensaje de correo se ha enviado correctamente", vbOKOnly
End Sub
Lo que vas a hacer es una prueba para enviar un correo de prueba. La macro que vas a ejecutar es la que dice: "mensaje".
Si el correo se envía con éxito, entonces hacemos un ciclo para enviar todos los correos que quieras.
Referencia:
¿Es posible enviar desde un Excel correos a diferentes destinatarios,adjuntando archivos distintos usando el Lotus y no outlook?
Prueba y me comentas.
Sal u dos