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 :

Ajout de pièces jointes à un mail d'après une liste


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Femme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Septembre 2020
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 30
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Contrôleur de Gestion
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2020
    Messages : 32
    Par défaut Ajout de pièces jointes à un mail d'après une liste
    Bonjour à tous,

    J'ai entrepris de simplifier au maximum l'envoi des factures au sein de mon entreprise.
    Grâce à l'aide de plusieurs personnes sur ce forum, j'ai pu automatiser la création des emails pour chaque client.
    L'étape suivante est de réussir à ajouter la ou les pièces jointes qui correspondent aux bons contacts.

    J'ai donc créé une liste de mes factures avec leur chemin d'accès avec quelques formules Excel.
    Tous les chemins d'accès se trouvent donc dans la colonne G, à partir de la ligne 34.
    Dans la colonne A de cette liste se trouve la formule que j'utilise pour m'adresser aux clients (ex : Chère Madame Dupont, Cher Monsieur Truc)

    Je chercherais donc dans un premier temps à faire tourner la fonction Attachments.Add dans une liste, mais ma tentative ne fonctionne pas ; la macro ne comprend pas le " .Attachments.Add d"

    Ensuite, je souhaiterais reproduire l'équivalent d'un Index(equiv) d'Excel pour que la macro n'ajoute que la ou les pièces jointes pour lesquelles la formule de politesse en colonne A est la même que la formule de politesse qui se met dans le corps de l'email (pour information, la formule de politesse destinée au corps de l'email est dans la colonne H). J'ai quelques idées pour réaliser ça, mais tant que la première étape ne fonctionne pas, je suis un peu coincée...

    J'espère que c'est assez clair ; voici le code en question :

    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
    Sub BoutonAng_Cliquer()
    Dim OL As Object
    Dim Texte As String
    Dim Ligne As Long
    Dim MiseEnCopie As String
     
    Ligne = 5
    MiseEnCopie = Range("L2")
    Set OL = CreateObject("Outlook.Application")
        While Range("C" & Ligne) <> ""
            With OL.CreateItem(0)
                Dest = Range("E" & Ligne) & " ; " & Range("F" & Ligne) & " ; " & Range("G" & Ligne)
                Sujet = Range("I" & Ligne)
                Texte = Range("H" & Ligne) & vbCrLf & vbCrLf
                Texte = Texte & Range("J" & Ligne) & vbCrLf & vbCrLf
                Texte = Texte & "Should you require any additional information, please do not hesitate to contact me." & vbCrLf & vbCrLf
                Texte = Texte & "Best regards," & vbCrLf & vbCrLf
                Texte = Texte & "Camille Robert" & vbCrLf
                Texte = Texte & "Financial Controller" & vbCrLf & vbCrLf
     
                .To = Dest
                .CC = MiseEnCopie
                .Subject = Sujet
                .Body = Texte
                .OriginatorDeliveryReportRequested = True 'confirmation de réception
                .Importance = 2
     
                For i = 33 To 100
                d = Sheets("ANG").Cells(i, 6)
                .Attachments.Add d
                Next i
     
                .Display
                '.Send envoi automatique
                Ligne = Ligne + 1
            End With
        Wend
     
    End Sub
    Merci par avance

  2. #2
    Membre averti
    Femme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Septembre 2020
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 30
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Contrôleur de Gestion
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2020
    Messages : 32
    Par défaut
    Désolée d'insister ; je pense que pour la boucle je vais pouvoir arriver à faire quelque chose, mais je bloque vraiment sur la commande de la pièce jointe.
    J'ai déjà entendu qu'il était possible de faire appel à une liste, mais je ne sais pas pourquoi la macro ne veut pas prendre en compte le "d" tel que je l'ai noté

  3. #3
    Expert confirmé
    Avatar de MarcelG
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    3 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3 449
    Billets dans le blog
    7
    Par défaut
    Salut,

    Tu peux consulter mon billet à ce sujet.
    Cela dit, il doit être mis à jour par la considération des tableaux structurés.

    Donc, en priorité, tu peux consulter ce post de Pierre

Discussions similaires

  1. Réponses: 2
    Dernier message: 18/06/2015, 12h15
  2. [WD-2003] Ajout de pièces jointes avant envoi du mail
    Par korni184 dans le forum VBA Word
    Réponses: 1
    Dernier message: 04/03/2011, 17h19
  3. [XL-2007] Ajouter pièce jointe au mail
    Par malababar dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 27/10/2010, 10h32
  4. Ajout de pièce jointe dans un mail
    Par Floriang33 dans le forum Langage
    Réponses: 3
    Dernier message: 29/11/2009, 03h44
  5. [Mail] Ajout de Pièce jointe dans un e-mail
    Par Anduriel dans le forum Langage
    Réponses: 3
    Dernier message: 03/01/2007, 11h17

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