Excel et Lotus Notes

T

thombar

Guest
Bonjour Cher Forum,

J'ai parcouru à peu près tout les posts du forum concernant Lotus Notes, et je ne trouve pas de réponse à ma question...

Existe t'il un moyen à partir d'Excel de créer un mail sous Lotus Notes (qui contiendrait bien entendu les noms des destinataires, l'objet, le corps du message et aussi des fichiers attachés) mais que celui-ci ne soit pas envoyé. Qu'il reste en attente, en gros....

L'opération d'envoi du mail serait donc manuelle.

Connaissez-vous un code vba qui puisse faire cela ?

Merci par avance !!
 
R

Robert

Guest
Bonjour,
Effectivement envoyer un mail avec Lotus Notes à l'aide d'Excel est possible, pour cela il faut utiliser les Objets Notes...

'Déclaration des objets
Dim Maildb As Object 'The mail database
Dim strUserName As String 'The current users notes name
Dim MailDoc As Object 'The mail document itself
Dim AttachME As Object 'The attachment richtextfile object
Dim Session As Object 'The notes session
Dim EmbedObj As Object 'The embedded object (Attachment)
Dim Recipient() As Variant
Dim ccRecipient() As Variant

'Start a session to notes
Set Session = CreateObject("Notes.NotesSession")
'Get Current user
strUserName = Session.UserName
'Open the mail database in notes
Set Maildb = Session.getdatabase("", "")
If Maildb.IsOpen = False Then 'Not already open for mail
Maildb.OpenMail
End If
'Create new memo
Set MailDoc = Maildb.CreateDocument
MailDoc.Form = "Memo"
MailDoc.SendTo = Recipient
MailDoc.CopyTo = ccRecipient
MailDoc.Subject = pstrSubject
MailDoc.Body = pstrBody
MailDoc.SaveMessageOnSend = False
MailDoc.From = strUserName
'Ajout du classeur courant...
ActiveWorkbook.Save
Attachment = ActiveWorkbook.Path + "\" + ActiveWorkbook.Name
Set AttachME = MailDoc.CREATERICHTEXTITEM("AttachementXLs")
Set EmbedObj = AttachME.EMBEDOBJECT(1454, "", Atttachment, "AttachmentXLs")
'Envoie du memo
MailDoc.Send 0

Dans ta question tu parle d'envoyer le mail manuellement; cela veut il dire que tu veux faire un "Save As Draft"?
Dans ce cas il faut faire un Save du MailDoc en placant
MailDoc.DefaultMailSaveOptions = "2" et non pas un MailDoc.Send......

Bonne journée
Robert
 
T

thombar

Guest
Bonjour et merci pour cette réponse, Robert.

J'ai dû mal m'exprimer.
En fait, je souhaite que le mail complété par vba soit visible à l'écran (comme si on venait de créer un mail sous Lotus et que l'on s'apprêtait à l'envoyer), et que la seule action qui reste à faire soit d'envoyer ce mail manuellement via Lotus Notes.

(Cela permet de faire une dernière vérification des données avant l'envoi.)

PS : les noms des destinataires, le sujet et le corps du message ne seront pas variables, mais en dur dans le code. Et les fichiers attachés seront tous les fichiers (*.*) présents dans un dossier précis.

Merci de votre aide.
 
R

Robert

Guest
Re Bonjour,
Pour faire cela il faut utiliser les classe UI (User Interface) de Notes l'object qui sont les classes Front End de Notes et non la Back End comme utilisé dans mon exemple...
Par exemple NotesUIWorkSpace est la classe qui montre l'espace de travail de Notes donc ce qui est visible ...
Pour les Database NotesUIDatabase, pour les documents NotesUIDocument ....
Sinon la méthode est la même...

Bon courage...
 
T

thombar

Guest
Merci, Robert, pour cette réponse rapide !

Je n'ai peut-être pas mentionné que j'étais relativement débutant !
Je sais à la limite apporter des petites modifications et personnalisations dans les codes, mais je suis loin de pouvoir comprendre comment réaliser ça.

Cela dit, bonne nouvelle, apparement c'est possible !!
 
R

Robert

Guest
Re Re bonjour,
En fait je pense que ton besoin n'est pas dans Excel...
Regarde au niveau de Notes dans ton mail, tu as les Stationnary qui peuvent faire cela...
Tu crée une note type qui contiendra les destinataires le texte ... il ne te restera plus qu'a accrocher les fichers (à l'aide du trombonne)...
@+ Robert
 

Discussions similaires

Statistiques des forums

Discussions
312 489
Messages
2 088 852
Membres
103 974
dernier inscrit
chmikha