j'ai trouvé cette macro sur un site et etant un grand novice en vba je
voudrais savoir si quelqu'un pourrait me la commenter. il y a comme des
zones d'ombre :-) comme :
- comment faire pour selectionner une plage de cellule dans une page.
a oui j'oublias cette macro fonctionne impec ou presque car le mail que je
reçois est vide lol
voila merci d'avance.
macro :
Sub SendNotesMail()
'Set up the objects required for Automation into lotus notes
Dim Maildb As Object 'The mail database
Dim UserName As String 'The current users notes name
Dim MailDbName As String 'THe current users notes mail database 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)
'Start a session to notes
Set Session = CreateObject("Notes.NotesSession")
'Get the sessions username and then calculate the mail file name
'You may or may not need this as for MailDBname with some systems you
'can pass an empty string
UserName = Session.UserName
MailDbName = Left$(UserName, 1) & Right$(UserName, (Len(UserName) - InStr(1,
UserName, " "
))) & ".nsf"
'Open the mail database in notes
Set Maildb = Session.GETDATABASE("", MailDbName)
If Maildb.IsOpen = True Then
'Already open for mail
Else
Maildb.OPENMAIL
End If
'Set up the new mail document
Set MailDoc = Maildb.CREATEDOCUMENT
MailDoc.Form = "Memo"
MailDoc.Sendto = Worksheets(3).Cells(2, 2).Value
MailDoc.CopyTo = "dgiry@technip.com"
MailDoc.Subject = Worksheets(3).Cells(1, 2).Value
MailDoc.Body = Worksheets(3).Cells(3, 2).Value
MailDoc.SaveMessageOnSend = SaveIt
'Set up the embedded object and attachment and attach it
Attachment1 = Worksheets(3).Cells(4, 2).Value
Attachment2 = Worksheets(3).Cells(5, 2).Value
Attachment3 = Worksheets(3).Cells(6, 2).Value
If Attachment1 <> "" And Attachment2 <> "" And Attachment3 <> "" Then
Set AttachME = MailDoc.CREATERICHTEXTITEM("Attachment1")
Set EmbedObj = AttachME.EMBEDOBJECT(1454, "", Attachment1, "Attachment1")
MailDoc.CREATERICHTEXTITEM (Attachment1)
Set AttachME = MailDoc.CREATERICHTEXTITEM("Attachment2")
Set EmbedObj = AttachME.EMBEDOBJECT(1454, "", Attachment2, "Attachment2")
MailDoc.CREATERICHTEXTITEM (Attachment2)
Set AttachME = MailDoc.CREATERICHTEXTITEM("Attachment3")
Set EmbedObj = AttachME.EMBEDOBJECT(1454, "", Attachment3, "Attachment3")
MailDoc.CREATERICHTEXTITEM (Attachment3)
End If
'Send the document
MailDoc.PostedDate = Now() 'Gets the mail to appear in the sent items folder
MailDoc.Send 0, Recipient
'Clean Up
Set Maildb = Nothing
Set MailDoc = Nothing
Set AttachME = Nothing
Set Session = Nothing
Set EmbedObj = Nothing
End Sub
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Philippe.R
Bonsoir,
Je tente une réponse, même tardive :
l'adresse du destinataire est supposée se trouver en B2 de la 3ème feuille du classeur le sujet est supposé se trouver en B1 de la 3ème feuille du classeur le corps en B3 les adresses de pièces à joindre en B4 à B6
ce qui pourrait expliquer que le courriel soit vide Mais je n'ai pas Notes sous la main poiur tester
"sleg" a écrit dans le message de news:
Bonjour, [...]
a oui j'oublias cette macro fonctionne impec ou presque car le mail que je reçois est vide lol [...]
macro : Sub SendNotesMail() 'Set up the objects required for Automation into lotus notes Dim Maildb As Object 'The mail database Dim UserName As String 'The current users notes name Dim MailDbName As String 'THe current users notes mail database 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) 'Start a session to notes Set Session = CreateObject("Notes.NotesSession") 'Get the sessions username and then calculate the mail file name 'You may or may not need this as for MailDBname with some systems you 'can pass an empty string UserName = Session.UserName MailDbName = Left$(UserName, 1) & Right$(UserName, (Len(UserName) - InStr(1, UserName, " " ))) & ".nsf" 'Open the mail database in notes Set Maildb = Session.GETDATABASE("", MailDbName) If Maildb.IsOpen = True Then 'Already open for mail Else Maildb.OPENMAIL End If 'Set up the new mail document Set MailDoc = Maildb.CREATEDOCUMENT MailDoc.Form = "Memo" MailDoc.Sendto = Worksheets(3).Cells(2, 2).Value MailDoc.CopyTo = "" MailDoc.Subject = Worksheets(3).Cells(1, 2).Value MailDoc.Body = Worksheets(3).Cells(3, 2).Value MailDoc.SaveMessageOnSend = SaveIt 'Set up the embedded object and attachment and attach it Attachment1 = Worksheets(3).Cells(4, 2).Value Attachment2 = Worksheets(3).Cells(5, 2).Value Attachment3 = Worksheets(3).Cells(6, 2).Value If Attachment1 <> "" And Attachment2 <> "" And Attachment3 <> "" Then Set AttachME = MailDoc.CREATERICHTEXTITEM("Attachment1") Set EmbedObj = AttachME.EMBEDOBJECT(1454, "", Attachment1, "Attachment1") MailDoc.CREATERICHTEXTITEM (Attachment1) Set AttachME = MailDoc.CREATERICHTEXTITEM("Attachment2") Set EmbedObj = AttachME.EMBEDOBJECT(1454, "", Attachment2, "Attachment2") MailDoc.CREATERICHTEXTITEM (Attachment2) Set AttachME = MailDoc.CREATERICHTEXTITEM("Attachment3") Set EmbedObj = AttachME.EMBEDOBJECT(1454, "", Attachment3, "Attachment3") MailDoc.CREATERICHTEXTITEM (Attachment3) End If 'Send the document MailDoc.PostedDate = Now() 'Gets the mail to appear in the sent items folder MailDoc.Send 0, Recipient 'Clean Up Set Maildb = Nothing Set MailDoc = Nothing Set AttachME = Nothing Set Session = Nothing Set EmbedObj = Nothing End Sub
Bonsoir,
Je tente une réponse, même tardive :
l'adresse du destinataire est supposée se trouver en B2 de la 3ème feuille
du classeur
le sujet est supposé se trouver en B1 de la 3ème feuille du classeur
le corps en B3
les adresses de pièces à joindre en B4 à B6
ce qui pourrait expliquer que le courriel soit vide
Mais je n'ai pas Notes sous la main poiur tester
"sleg" <sbtlg@yahoo.fr> a écrit dans le message de
news:umd9u9nuHHA.3476@TK2MSFTNGP02.phx.gbl...
Bonjour,
[...]
a oui j'oublias cette macro fonctionne impec ou presque car le mail que je
reçois est vide lol
[...]
macro :
Sub SendNotesMail()
'Set up the objects required for Automation into lotus notes
Dim Maildb As Object 'The mail database
Dim UserName As String 'The current users notes name
Dim MailDbName As String 'THe current users notes mail database 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)
'Start a session to notes
Set Session = CreateObject("Notes.NotesSession")
'Get the sessions username and then calculate the mail file name
'You may or may not need this as for MailDBname with some systems you
'can pass an empty string
UserName = Session.UserName
MailDbName = Left$(UserName, 1) & Right$(UserName, (Len(UserName) -
InStr(1, UserName, " "
))) & ".nsf"
'Open the mail database in notes
Set Maildb = Session.GETDATABASE("", MailDbName)
If Maildb.IsOpen = True Then
'Already open for mail
Else
Maildb.OPENMAIL
End If
'Set up the new mail document
Set MailDoc = Maildb.CREATEDOCUMENT
MailDoc.Form = "Memo"
MailDoc.Sendto = Worksheets(3).Cells(2, 2).Value
MailDoc.CopyTo = "dgiry@technip.com"
MailDoc.Subject = Worksheets(3).Cells(1, 2).Value
MailDoc.Body = Worksheets(3).Cells(3, 2).Value
MailDoc.SaveMessageOnSend = SaveIt
'Set up the embedded object and attachment and attach it
Attachment1 = Worksheets(3).Cells(4, 2).Value
Attachment2 = Worksheets(3).Cells(5, 2).Value
Attachment3 = Worksheets(3).Cells(6, 2).Value
If Attachment1 <> "" And Attachment2 <> "" And Attachment3 <> "" Then
Set AttachME = MailDoc.CREATERICHTEXTITEM("Attachment1")
Set EmbedObj = AttachME.EMBEDOBJECT(1454, "", Attachment1, "Attachment1")
MailDoc.CREATERICHTEXTITEM (Attachment1)
Set AttachME = MailDoc.CREATERICHTEXTITEM("Attachment2")
Set EmbedObj = AttachME.EMBEDOBJECT(1454, "", Attachment2, "Attachment2")
MailDoc.CREATERICHTEXTITEM (Attachment2)
Set AttachME = MailDoc.CREATERICHTEXTITEM("Attachment3")
Set EmbedObj = AttachME.EMBEDOBJECT(1454, "", Attachment3, "Attachment3")
MailDoc.CREATERICHTEXTITEM (Attachment3)
End If
'Send the document
MailDoc.PostedDate = Now() 'Gets the mail to appear in the sent items
folder
MailDoc.Send 0, Recipient
'Clean Up
Set Maildb = Nothing
Set MailDoc = Nothing
Set AttachME = Nothing
Set Session = Nothing
Set EmbedObj = Nothing
End Sub
l'adresse du destinataire est supposée se trouver en B2 de la 3ème feuille du classeur le sujet est supposé se trouver en B1 de la 3ème feuille du classeur le corps en B3 les adresses de pièces à joindre en B4 à B6
ce qui pourrait expliquer que le courriel soit vide Mais je n'ai pas Notes sous la main poiur tester
"sleg" a écrit dans le message de news:
Bonjour, [...]
a oui j'oublias cette macro fonctionne impec ou presque car le mail que je reçois est vide lol [...]
macro : Sub SendNotesMail() 'Set up the objects required for Automation into lotus notes Dim Maildb As Object 'The mail database Dim UserName As String 'The current users notes name Dim MailDbName As String 'THe current users notes mail database 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) 'Start a session to notes Set Session = CreateObject("Notes.NotesSession") 'Get the sessions username and then calculate the mail file name 'You may or may not need this as for MailDBname with some systems you 'can pass an empty string UserName = Session.UserName MailDbName = Left$(UserName, 1) & Right$(UserName, (Len(UserName) - InStr(1, UserName, " " ))) & ".nsf" 'Open the mail database in notes Set Maildb = Session.GETDATABASE("", MailDbName) If Maildb.IsOpen = True Then 'Already open for mail Else Maildb.OPENMAIL End If 'Set up the new mail document Set MailDoc = Maildb.CREATEDOCUMENT MailDoc.Form = "Memo" MailDoc.Sendto = Worksheets(3).Cells(2, 2).Value MailDoc.CopyTo = "" MailDoc.Subject = Worksheets(3).Cells(1, 2).Value MailDoc.Body = Worksheets(3).Cells(3, 2).Value MailDoc.SaveMessageOnSend = SaveIt 'Set up the embedded object and attachment and attach it Attachment1 = Worksheets(3).Cells(4, 2).Value Attachment2 = Worksheets(3).Cells(5, 2).Value Attachment3 = Worksheets(3).Cells(6, 2).Value If Attachment1 <> "" And Attachment2 <> "" And Attachment3 <> "" Then Set AttachME = MailDoc.CREATERICHTEXTITEM("Attachment1") Set EmbedObj = AttachME.EMBEDOBJECT(1454, "", Attachment1, "Attachment1") MailDoc.CREATERICHTEXTITEM (Attachment1) Set AttachME = MailDoc.CREATERICHTEXTITEM("Attachment2") Set EmbedObj = AttachME.EMBEDOBJECT(1454, "", Attachment2, "Attachment2") MailDoc.CREATERICHTEXTITEM (Attachment2) Set AttachME = MailDoc.CREATERICHTEXTITEM("Attachment3") Set EmbedObj = AttachME.EMBEDOBJECT(1454, "", Attachment3, "Attachment3") MailDoc.CREATERICHTEXTITEM (Attachment3) End If 'Send the document MailDoc.PostedDate = Now() 'Gets the mail to appear in the sent items folder MailDoc.Send 0, Recipient 'Clean Up Set Maildb = Nothing Set MailDoc = Nothing Set AttachME = Nothing Set Session = Nothing Set EmbedObj = Nothing End Sub