IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Macro pour envoyer mail via lotus notes


Sujet :

Macros et VBA Excel

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 11
    Points : 6
    Points
    6
    Par défaut Macro pour envoyer mail via lotus notes
    Bonjour à Tous,

    Je suis débutante en Execel, et en VBA bien sur aussi .

    J'espère que vous serez indulgents avec moi.

    J’ai besoin d’envoyer par mail un classeur Excel (le classeur actif), et ou la feuille active via lotus note version 6.

    J’ai fait une recherche sur le net et j’ai pratiquement trouvé mon bonheur, si si ca arrive.

    J'ai trouvé cette macro ( elle suit juste derrière) permettant d'envoyer des mails via Lotus Notes à partir d'Excel.

    Si quelqu’un peut m’aider à adapter et modifier ce code afin que je puisse :

    • Remplir le sujet du mail,
    • Mettre plusieurs destinataires du mail,
    • Remplir un petit baratin dans le corps du message avec les éventuels RC (retour à la ligne),
    • Remplir l’émetteur du mail



    D'avance merci pour votre aide.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    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
    J’ai fait une autre recherche et j’ai trouvé cela également pour les destinataires multiples.

    Avec un tableau (Array), ca passe : Code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MailDoc.Sendto = Array(Worksheets(3).Cells(2, 2).Value, Worksheets(3).Cells(3, 2).Value)
    ou si la cellule contient les adresses séparées par des virgules : Code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MailDoc.Sendto = Split(Worksheets(3).Cells(2, 2).Value, ",")

    Je rappele, que je débute en Excel, et en macro et VBA je préfère même pas en parler .

    Merci encore d’avance pour votre aide.


    Débutante-Excel

  2. #2
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Bonjour,
    Tu devrais changer le sujet de la discussion, et lire les règles du forum. "Un sujet de discussion doit être explicite afin de permettre à chacun de savoir s'il peut répondre". En outre, tous ceux qui viennent sur ce forum ont besoin d'aide, débutants ou non.
    Pour modifier le sujet, utilise le bouton Editer en bas de ton message

  3. #3
    Membre averti Avatar de tomy7
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2008
    Messages
    540
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2008
    Messages : 540
    Points : 391
    Points
    391
    Par défaut
    tu cree un bouton sur ta feuille excel
    tu te mets en mode creation
    tu double clic sur le bouton
    Vba s ouvre
    tu colle se code entre
    private sub commandbutton () et end sub
    tu adapte le code a tes donnee

    c est a dire

    MailDoc.Sendto = ici tu colle ta solution pour l envoi a plusieurs personnes
    MailDoc.CopyTo = ici si tu fais une copy a quelqu un
    MailDoc.Subject = ton sujet de mail ...
    exemple worksheets("nom de ta feuille").range(la cellule qui contient le sujet , ex: "A1").value
    MailDoc.Body =


    tu fais sa pour tout ....
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
     
    '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 =  ici tu colle ta solution pour l envoi a plusieurs personnes 
    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
    Bonne journee
    tom

    "Barbar : The rest of the warrior"

    Into the wild....

Discussions similaires

  1. [Sources] Comment envoyer un e-mail via Lotus Notes ?
    Par Heydrickx dans le forum Contribuez
    Réponses: 0
    Dernier message: 16/12/2012, 12h03
  2. Envoyer mails via LOTUS NOTES
    Par Dragan dans le forum SharePoint
    Réponses: 1
    Dernier message: 11/08/2009, 16h20
  3. Macro pour envoyer mail via lotus notes
    Par jimmy0123 dans le forum Macros et VBA Excel
    Réponses: 19
    Dernier message: 01/12/2008, 15h51
  4. Envoi de mail via lotus notes
    Par titof90 dans le forum VBA Access
    Réponses: 13
    Dernier message: 26/06/2007, 13h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo