Email Lotusnotes via Excel : Coller

  • Initiateur de la discussion Laurent
  • Date de début
L

Laurent

Guest
Bonjour,

J'ai un code pour envoyer un mail avec lotusnotes via Excel.
Mais j'aimerai que dans le corp du message il collela copie-écran que j'ai faite. Quelqu'un connait-il le code?

Pour le corp du mge j'ai :

MailDoc.Body = ????

Si je mets 'Paste' çà ne marche pas.

Merci

Laurent
 
R

Robert

Guest
Bonjour Laurent,
Je pense que dans ton code MailDoc.Body est un objet ...
Il faudrait que tu crée un autre objet de type 'RichText' afin de pouvoir y placer ton image....
Connais tu les classes Notes ? Dans les exemple de Notes il y a la façon de manipuler les RichText .....
@+
 
S

steph@ne

Guest
Salut,

Voici le code pour envoyer le contenu du presse papier (copier/coller)
comme corp du mail par lotus sous excel.

Ce code fonctionne trés bien, mais il faut que lotus soit ouvert.
Si qq connait la soluce pour que si lotus n'est pas ouvert, qu'il s'ouvre automatiquement et me demande mon mot de passe.

Merci
 
S

steph@ne

Guest
Salut,

Voici le code pour envoyer le contenu du presse papier (copier/coller)
comme corp du mail par lotus sous excel.

Ce code fonctionne trés bien, mais il faut que lotus soit ouvert.
Si qq connait la soluce pour que si lotus n'est pas ouvert, qu'il s'ouvre automatiquement et me demande mon mot de passe.

Merci
 
S

steph@ne

Guest
Salut,

Voici le code pour envoyer le contenu du presse papier (copier/coller)
comme corp du mail par lotus sous excel.

Ce code fonctionne trés bien, mais il faut que lotus soit ouvert.
Si qq connait la soluce pour que si lotus n'est pas ouvert, qu'il s'ouvre automatiquement et me demande mon mot de passe.

Merci
 
S

Stéph@ne

Guest
Salut,

Voici le code pour envoyer le contenu du presse papier (copier/coller)
comme corp du mail par lotus sous excel.

Ce code fonctionne trés bien, mais il faut que lotus soit ouvert.
Si qq connait la soluce pour que si lotus n'est pas ouvert, qu'il s'ouvre automatiquement et me demande mon mot de passe.

Merci

je met le code car je ne suis pas sur qu'il a pris ma piéce jointe (8Ko)

Sub SendNotesMail(Subject, Attachment, Recipient, CC, BodyText, SaveIt)

'Set up the objects required for Automation into lotus notes
Dim Maildb 'The mail database
Dim MailDoc 'The mail document itself
Dim AttachME 'The attachment richtextfile object
Dim Session 'The notes session
Dim EmbedObj 'The embedded object (Attachment)
Dim Workspace
Dim uiDoc

'Replace ';' by ',' in Recipient and CC
Recipient = Replace(Recipient, ';', ',')
CC = Replace(CC, ';', ',')

'Start a session to notes
Set Session = CreateObject('Notes.NotesSession')
Set Workspace = CreateObject('Notes.NotesUIWorkspace')


' Find the Local Address Book
sNamesLine = Session.GetEnvironmentValue('names', True)
nPos = InStr(sNamesLine, ',')
If nPos > 0 Then
sNamesLine = Left(sNamesLine, nPos - 1)
Else
sNamesLine = 'names.nsf'
End If
Set Maildb = Session.getDatabase('', sNamesLine)
If Not (Maildb.IsOpen) Then
Messagebox ('Cannot find Local Address Book / Impossible de trouver Carnet d'adresses Personnel')
Exit Sub
End If
'Update of Location Documents
Set View = Maildb.GetView('($Locations)')
If (View Is Nothing) Then
Messagebox ('Cannot find the necessary view / Impossible de trouver les vues indispensables')
Exit Sub
End If
Set note = View.GetFirstDocument
sMailFile = Session.GetEnvironmentString('MailFile', True)
sServer = Session.GetEnvironmentString('MailServer', True)


'Set up the new mail document
Set Db = Session.getDatabase('', sMailFile) 'set db to database not yet named
If Db.IsOpen = True Then
'Already open for mail
Else
Db.OPENMAIL
End If

Set MailDoc = Db.CREATEDOCUMENT
MailDoc.Form = 'Memo'
MailDoc.sendto = Recipient
MailDoc.copyto = CC
MailDoc.Subject = Subject


MailDoc.SAVEMESSAGEONSEND = SaveIt

'Set up the embedded object and attachment and attach it
If Attachment <> '' And Attachment <> ' ' Then
entries = Split(Attachment, ';')
' Get the file names.
For i = LBound(entries, 1) To UBound(entries, 1) - 1
Set AttachME = MailDoc.CREATERICHTEXTITEM('Attachment' & i)
Set EmbedObj = AttachME.EMBEDOBJECT(1454, '', entries(i), 'Attachment' & i)
Next
End If

'Edit the document
Set Wshshell = CreateObject('wscript.shell')
retcode = Wshshell.Run('Notes.exe')

Call Workspace.OpenDatabase(sServer, sMailFile)

Set uiDoc = Workspace.EditDocument(True, MailDoc)
uiDoc.GotoField ('Body')

uiDoc.Paste
'Send the document
ret = uiDoc.send
uiDoc.Close
'Clean Up
Set Maildb = Nothing
Set MailDoc = Nothing
Set AttachME = Nothing
Set Session = Nothing
Set EmbedObj = Nothing
Set Workspace = Nothing
Set uiDoc = Nothing
End Sub
 
S

Stéph@ne

Guest
Salut,

Voici le code pour envoyer le contenu du presse papier (copier/coller)
comme corp du mail par lotus sous excel.

Ce code fonctionne trés bien, mais il faut que lotus soit ouvert.
Si qq connait la soluce pour que si lotus n'est pas ouvert, qu'il s'ouvre automatiquement et me demande mon mot de passe.

Merci

je met le code car je ne suis pas sur qu'il a pris ma piéce jointe (8Ko)

Sub SendNotesMail(Subject, Attachment, Recipient, CC, BodyText, SaveIt)

'Set up the objects required for Automation into lotus notes
Dim Maildb 'The mail database
Dim MailDoc 'The mail document itself
Dim AttachME 'The attachment richtextfile object
Dim Session 'The notes session
Dim EmbedObj 'The embedded object (Attachment)
Dim Workspace
Dim uiDoc

'Replace ';' by ',' in Recipient and CC
Recipient = Replace(Recipient, ';', ',')
CC = Replace(CC, ';', ',')

'Start a session to notes
Set Session = CreateObject('Notes.NotesSession')
Set Workspace = CreateObject('Notes.NotesUIWorkspace')


' Find the Local Address Book
sNamesLine = Session.GetEnvironmentValue('names', True)
nPos = InStr(sNamesLine, ',')
If nPos > 0 Then
sNamesLine = Left(sNamesLine, nPos - 1)
Else
sNamesLine = 'names.nsf'
End If
Set Maildb = Session.getDatabase('', sNamesLine)
If Not (Maildb.IsOpen) Then
Messagebox ('Cannot find Local Address Book / Impossible de trouver Carnet d'adresses Personnel')
Exit Sub
End If
'Update of Location Documents
Set View = Maildb.GetView('($Locations)')
If (View Is Nothing) Then
Messagebox ('Cannot find the necessary view / Impossible de trouver les vues indispensables')
Exit Sub
End If
Set note = View.GetFirstDocument
sMailFile = Session.GetEnvironmentString('MailFile', True)
sServer = Session.GetEnvironmentString('MailServer', True)


'Set up the new mail document
Set Db = Session.getDatabase('', sMailFile) 'set db to database not yet named
If Db.IsOpen = True Then
'Already open for mail
Else
Db.OPENMAIL
End If

Set MailDoc = Db.CREATEDOCUMENT
MailDoc.Form = 'Memo'
MailDoc.sendto = Recipient
MailDoc.copyto = CC
MailDoc.Subject = Subject


MailDoc.SAVEMESSAGEONSEND = SaveIt

'Set up the embedded object and attachment and attach it
If Attachment <> '' And Attachment <> ' ' Then
entries = Split(Attachment, ';')
' Get the file names.
For i = LBound(entries, 1) To UBound(entries, 1) - 1
Set AttachME = MailDoc.CREATERICHTEXTITEM('Attachment' & i)
Set EmbedObj = AttachME.EMBEDOBJECT(1454, '', entries(i), 'Attachment' & i)
Next
End If

'Edit the document
Set Wshshell = CreateObject('wscript.shell')
retcode = Wshshell.Run('Notes.exe')

Call Workspace.OpenDatabase(sServer, sMailFile)

Set uiDoc = Workspace.EditDocument(True, MailDoc)
uiDoc.GotoField ('Body')

uiDoc.Paste
'Send the document
ret = uiDoc.send
uiDoc.Close
'Clean Up
Set Maildb = Nothing
Set MailDoc = Nothing
Set AttachME = Nothing
Set Session = Nothing
Set EmbedObj = Nothing
Set Workspace = Nothing
Set uiDoc = Nothing
End Sub
 

Discussions similaires

Réponses
8
Affichages
435
Réponses
2
Affichages
536

Membres actuellement en ligne

Statistiques des forums

Discussions
314 017
Messages
2 104 583
Membres
109 084
dernier inscrit
mizab