' --------- Envoi d'un mail avec Lotus Notes ---------- .
'Ajouter la référence Lotus Domino Objects (domobj.tlb) .
'Cocher Référence [x]Lotus Domino Objects .
Public Sub EnvoiMailLotusNotes(CheminEtFichier As String, Sujet As String, Message As String)
On Error GoTo ErreurNET: Err.Clear '*****
Dim oSession As Object 'CreateObject("Notes.NotesSession")
Dim UserName As String 'Nom d'utilisateur
Dim DataBase As Object 'Base des mails
Dim DataBaseName As String 'Nom de la base
Dim Document As Object 'Mail
Dim AttachME As Object 'Fich joint en RTF
Dim AttachF1 As Object '1' pièce attachée
' load adresses dans la feuille nommée NomDeLaFeuilDATA$
'dans la cellule "CellDATA_AdresDestinataire"
'au format Adres1@orange.fr;Adres2@free.fr;Adres3......
Dim Tablo As Variant, AdresDestinataire As String
AdresDestinataire = Sheets(NomDeLaFeuilDATA$).Range("CellDATA_AdresDestinataire")
If InStr(AdresDestinataire, ";") = 0 Then AdresDestinataire = AdresDestinataire & ";"
Tablo = Split(AdresDestinataire, ";")
' Crée la session
Set oSession = CreateObject("Notes.NotesSession")
' Récupère nom d'utilisateur
UserName = oSession.UserName
DataBaseName = Left$(UserName, 1) & Right$(UserName, (Len(UserName) - InStr(1, UserName, " "))) & ".nsf"
' Ouvre la base des mails (si fermé, ouvre et demande le password)
Set DataBase = oSession.GetDataBase("", DataBaseName)
If Not DataBase.IsOpen Then DataBase.OpenMail
' Crée le document
Set Document = DataBase.CreateDocument
' Colle Adresses /Sujet /Message et - Envoie le Mail -
Document.Form = "Memo" 'type "Form", "Memo"
Document.Sendto = Tablo
Document.Subject = Sujet$
Document.Body = Message$
If CheminEtFichier$ <> "" Then 'Joint le Fichier
Set AttachME = Document.CreateRichTextItem("Attachment")
Set AttachF1 = AttachME.EmbedObject(1454, "", CheminEtFichier$, "Attachment")
End If
Document.SaveMessageOnSend = True 'True svg dans les courriers envoyés
Document.PostedDate = Now()
Document.Send 0, Tablo
'------- fin ---------
Set oSession = Nothing: Set DataBase = Nothing: Set Document = Nothing
Set AttachME = Nothing: Set AttachF1 = Nothing
On Error GoTo 0: Err.Clear
Exit Sub
'--------
ErreurNET:
Msg$ = "Problème de connexion !?" & vbLf & vbLf & _
"Erreur " & Err.Source & " No " & Err.Number & vbLf & vbLf & Err.Description
M$ = "Envoie Mail"
MsgBox Msg$, vbCritical, M$, Err.HelpFile, Err.HelpContext
On Error GoTo 0: Err.Clear: Exit Sub
End Sub