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 VBA pour joindre plusieurs fichiers dans email


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    ingenieur
    Inscrit en
    Octobre 2016
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : ingenieur

    Informations forums :
    Inscription : Octobre 2016
    Messages : 10
    Par défaut Macro VBA pour joindre plusieurs fichiers dans email
    Bonjour a tous,

    Je sollicite votre aide car j'ai un souci sur une de mes macros. En effet, j'ai une macro qui me permet de: creer un email ( avec IBM Lotus )et joindre un fichier pdf avec. J'aimerai cependant joindre plusieurs fichiers dans ce mail et pas qu'un seul. D'ailleurs le nombre n'est pas fixe il changera a chaque fois.

    Voici mon code pour joindre un seul fichier a mon email:

    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
    60
    Sub Button2_Click()
    
    Dim xlApp As Excel.Application
    Dim xlBook As Excel.Workbook
    Dim xlSheet As Excel.Worksheet
    Dim envoyerA As String, envoyerCc As String, Subject As String, Body As String
    Dim file_name As String
         
        envoyerA = Sheets("Sheet1").Range("mailto").Value
        Subject = Sheets("Sheet1").Range("Subject").Value
        Body = Sheets("Sheet1").Range("Body").Value
          
    file_name=D:Perso\test.pdf
    
     Dim objNotes As Object, objNotesDB As Object, objNotesMailDoc As Object
        Dim SendItem, NCopyItem, BlindCopyToItem, i As Integer, rtitem
        Dim Msg As String
        On Error Resume Next
        AppActivate "Notes"
        
        
        If Not Err.Number = 0 Then
            Err.Clear
        
        Else
            Set objNotes = GetObject("", "Notes.Notessession")
            Set objNotesDB = objNotes.GETDATABASE("", "")
            Call objNotesDB.OPENMAIL
            Set objNotesMailDoc = objNotesDB.CREATEDOCUMENT
            objNotesMailDoc.Form = "Memo"
            
           
            
            Call objNotesMailDoc.Save(True, False)
            Set SendItem = objNotesMailDoc.APPENDITEMVALUE("SendTo", "")
            Set NCopyItem = objNotesMailDoc.APPENDITEMVALUE("CopyTo", "")
            Set BlindCopyToItem = objNotesMailDoc.APPENDITEMVALUE("BlindCopyTo", "")
            objNotesMailDoc.SendTo = envoyerA
            objNotesMailDoc.Subject = Subject
            Set rtitem = objNotesMailDoc.CREATERICHTEXTITEM("Body")
            objNotesMailDoc.Body = Body
            
             ''''''''''''''''''''''''''''''''''''''''attachment
            Dim EmbedObj As Object
            Set EmbedObj = rtitem.EmbedObject(1454, "Body", file_name, "")
            ''''''''''''''''''''''''''''''''''''''''
            
            rtitem.ADDNEWLINE (1)
            Call objNotesMailDoc.Save(True, False)
            objNotesMailDoc.RemoveItem ("DeliveredDate")
            Call objNotesMailDoc.Save(True, False)
            AppActivate ("Microsoft Excel")
            Msg = "Mail cree"
            MsgBox Msg, vbInformation, "Notesmail Draft..."
            Call objNotes.Close
            Set objNotes = Nothing
            Exit Sub
        End If
    
    End Sub
    Ce que j'ai essaye de changer: J'ai cree une liste Table qui contient le nom (A et B par exemple) des fichiers a joindre

    Dans la partie "attachement"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Dim EmbedObj As Object
             For p = 2 To UBound(Table)
             Nom = Table(p)
             file_name = "D:Perso\" & Nom & ".pdf"
            Set EmbedObj = rtitem.EmbedObject(1454, "Body", file_name, "")
            Next p
    Mais malheureusement cela fait planter Lotus et je ne pense pas que ce soit la bonne methode.

    En vous remerciant par avance de votre aide

  2. #2
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Cette demande n'a aucun rapport avec Excel.
    Tu devrais la déplacer dans "VBA Général".
    http://www.developpez.net/forums/f28...e/general-vba/

Discussions similaires

  1. Réponses: 5
    Dernier message: 22/08/2014, 21h48
  2. Macro VBA pour ouvrir un script dans Autocad
    Par Nicletess dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 15/04/2014, 09h30
  3. [XL-2007] Macro VBA pour imprimer plusieurs onglets sur une feuille recto verso
    Par oekoniko dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 25/03/2014, 15h24
  4. [XL-2003] VBA : collage spécial Meta fichier dans email Outlook
    Par Djohn dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 30/04/2010, 15h20
  5. Macro VBA - Manipulation de plusieurs fichiers
    Par Shaia79 dans le forum Macros et VBA Excel
    Réponses: 19
    Dernier message: 27/02/2008, 21h06

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