Envoi de mail simple avec lotus notes - vb

Soyez le premier à donner votre avis sur cette source.

Snippet vu 12 208 fois - Téléchargée 37 fois

Contenu du snippet

Fonction à inclure dans un projet - utilise les objets Lotus Domino pour envoyer un mail tout simple (param : destinataire, sujet, contenu du mail)

Source / Exemple :


' Faire une liaison vers les objets "Lotus Domino Objects"
' ex d'utilisation :
' SendNotesMail("drouzig@free.fr", False, "Joli sujet", "Ceci est le texte de mon mail !")
Public Sub SendNotesMail(Recipient As String, SaveIt As Boolean, Optional Subject As String, Optional BodyText As String)

    ' Initialisation des objets
    Dim domSession As New Domino.NotesSession
    Dim domDatabase As New Domino.NotesDatabase
    Dim domDocument As NotesDocument
    Dim strMailDbName As String

On Error GoTo End_Error

    ' Initialisation de la session Notes - utilisez votre password dans le cas d'un fichier ID protégé
    ' Le paramètre est à supprimer dans le cas contraire
    domSession.Initialize ("********")
    
    
    ' Le chemin est soit relatif si la base est sur le serveur, soit absolu si elle est en local
    strMailDbName = "U:\Lotus\Notes\Data\base.nsf"
    
    ' Récupération de la base de courrier en fonction du nom
    Set domDatabase = domSession.GetDatabase(domSession.ServerName, strMailDbName, False)
    
    ' Ouverture de la base si un client ne l'a pas déjà fait
    If Not domDatabase.IsOpen = True Then
        domDatabase.Open
    End If
    
    ' Création du mail à envoyer
    Set domDocument = domDatabase.CreateDocument
    ' Définition du type de document
    domDocument.AppendItemValue "Form", "Memo"
    ' Définition du sujet
    domDocument.AppendItemValue "Subject", Subject
    ' Définition du corps du mail
    domDocument.AppendItemValue "Body", BodyText
    ' Définition de la date d'envoi
    domDocument.AppendItemValue "PostedDate", Now()
    ' Sauvegarde ou non du mail à l'envoi
    domDocument.SaveMessageOnSend = SaveIt
    ' Envoi du mail
    ' Attention, Recipient doit toujours être renseigné sous peine d'exception
    domDocument.Send 0, Recipient
    
    ' Libération des objets
    Set domDocument = Nothing
    Set domDatabase = Nothing
    Set domSession = Nothing

    Exit Sub
    
End_Error:
    ' Traitement éventuel de l'exception
    MsgBox ("Erreur : " & Err.Number & "; " & Err.Description)
End Sub

Conclusion :


Commentaires bienvenus, bien sûr.
Merci à tous ceux qui contribuent, ça aide de temps à autres ;)

Drouzig Chat

A voir également

Ajouter un commentaire

Commentaires

The6L20
Messages postés
1
Date d'inscription
lundi 4 décembre 2006
Statut
Membre
Dernière intervention
4 décembre 2006
-
bonjour,

je cherche a envoyer des mails avec une piece jointe a partir d'acces dans lotus, j'ai reussi a faire pour que mon etat je mette en piece jointe, pour mettre mes destinaitaire, mais aujourd'hui on me demande que le message qui est toujours le meme pour tous les mails cree(insere directement dans le module) soit mis en page, et je n'arrive pas a trouver une aide concluente la dessus! help!

merci
julien_u
Messages postés
4
Date d'inscription
dimanche 22 janvier 2006
Statut
Membre
Dernière intervention
4 juillet 2006
-
Est ce que cette fonction peut être facilement transformable en VBS ?

Merci !
ichtawn
Messages postés
4
Date d'inscription
dimanche 13 mars 2005
Statut
Membre
Dernière intervention
27 mai 2005
-
salut tt le monde , je suis entrain de developper une application en VB qui va me permetre d'extraire des dnnées de la base du document lotus notes ( surtout le document Email) , et envoyer des email a cette base du document , mais je suis vraiment bloquer , si vous avez qlq chose pour m'aider !!!!!! merci d'avance !!!!!
Eldyru
Messages postés
2
Date d'inscription
lundi 6 novembre 2000
Statut
Membre
Dernière intervention
21 janvier 2005
-
Arf ! marchi bien , ça marche tip top...
Drouzig
Messages postés
3
Date d'inscription
vendredi 17 décembre 2004
Statut
Membre
Dernière intervention
5 décembre 2005
-
Hello,
peut-être as-tu déjà trouvé la solution, c'est pas très complexe : au lieu de passer une simple chaîne de caractères pour le destinataire à notre fonction d'envoi de mail, on va lui passer un tableau.
L'en-tête de la fonction devient ainsi :

Public Sub SendNotesMail(Recipient() As Variant, SaveIt As Boolean, Optional Subject As String, Optional BodyText As String)

...

End Sub

Et dans ta partie de code qui appelle cette fonction, il te faudra définir ton tableau de destinataires :

Dim tabDestinataire(10) as Variant ' taille arbitraire, ça se change dynamiquement au besoin

tabDestinataire(0) = "adresse1"
...
tabDestinataire(9) = "adresse9"


Good luck !

Drouzig Chat

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.