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 mailing automatique à partir de Excel pour Outlook


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti
    Homme Profil pro
    Responsable clientèle
    Inscrit en
    Décembre 2021
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Responsable clientèle
    Secteur : Services de proximité

    Informations forums :
    Inscription : Décembre 2021
    Messages : 15
    Par défaut Macro mailing automatique à partir de Excel pour Outlook
    Bonjour à tous,

    Après plusieurs recherches sur différents tuto, je n'arrive plus à avancer dans la macro que j'essaie d'écrire

    En récapitulatif, j'ai un fichier dans lequel j'ai :

    - un onglet "Planification 2022" dans lequel :
    en colonne C j'ai une liste de locaux
    en colonne D j'ai une date de début d'intervention sur le local en question
    en colonne I j'ai l'adresse mail pour le local concerné

    - ensuite j'ai des onglets que j'ai nommé avec le numéro de local de la colonne C (la trame de chaque onglet est identique mais le contenu diffère)

    Ce que j'essaie d'écrire en VBA :
    Etape 1 : enregistrer en pdf l'onglet actif dans le même dossier que le fichier (j'ai écris une macro avec une msgbox pour cette étape qui me positionne sur l'onglet et l'enregistre dans le dossier donc ça marche jusque là)

    Etape 2 : Envoyer un mail au client qui figure en colonne I à J-15 par rapport à la date qui figure en colonne D en incluant en PJ la fiche PDF que j'aurai créé pour le local mentionné en colonne C
    et qui porte le même nom

    Par ex, le local n° 10000 (colonne C) intervention prévue le 31/01/22 (colonne D), il faudrait envoyer un mail au client colonne I avec la pièce jointe (PDF du local 10000) à J-15

    J'espère que mes explications seront suffisamment clair

    Merci pour votre temps et aide précieuse


  2. #2
    Expert confirmé
    Homme Profil pro
    retraité
    Inscrit en
    Juin 2012
    Messages
    3 437
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : retraité
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Juin 2012
    Messages : 3 437
    Par défaut
    Bonjour,

    Le principe: avoir une macro qui filtre les lignes du "Tableau1" de la feuille "Plan 2022" et sur base de ce tableau filtré envoyer les emails. Un début de solution:
    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
    Option Explicit
     
    Sub Dans15jours()
        With ActiveWorkbook.Worksheets("Plan 2022").ListObjects("Tableau1")
        '--- filtre entre jour +14 et +16 --- à adapter --- quid date est samedi ou dimanche ?
            .Range.AutoFilter Field:=4, _
                              Criteria1:=">=" & Format(Date + 14, "yyyy-mm-dd"), _
                              Operator:=xlAnd, _
                              Criteria2:="<" & Format(Date + 17, "yyyy-mm-dd")
        '--- trie par date
            With .Sort
                .SortFields.Add2 Key:=Range("Tableau1[Colonne D]"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
                .Header = xlYes
                .MatchCase = False
                .Orientation = xlTopToBottom
                .SortMethod = xlPinYin
                .Apply
            End With
        End With
        '--- parcourir les lignes filtrées triées
        Dim rw As Range
        For Each rw In Range("Tableau1").Columns(1).SpecialCells(xlCellTypeVisible)
            '--- exemple de reprise des données de la ligne --- données à utiliser pour composition email (nombreux tutos sur ce sujet)
            Debug.Print rw, rw.Offset(0, 1), rw.Offset(0, 2), rw.Offset(0, 3), rw.Offset(0, 4)
        Next rw
    End Sub
    Cordialement.
    Fichiers attachés Fichiers attachés

Discussions similaires

  1. [Toutes versions] Macro mailing automatique à partir de Excel pour Outlook
    Par Christian_Pfender dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 12/01/2022, 16h09
  2. fichier kml à partir d'Excel pour Google Earth
    Par lucy22 dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 15/02/2013, 15h25
  3. [WD-2003] Macro cherchant du text ss Excel pour copie dans word
    Par yannick113 dans le forum VBA Word
    Réponses: 0
    Dernier message: 21/12/2010, 09h53
  4. [PPT-2003] Lancer une macro dans PPT à partir d''Excel
    Par Daejung dans le forum VBA PowerPoint
    Réponses: 4
    Dernier message: 30/11/2009, 11h19
  5. Envoyer un mail automatiquement à partir d'Access
    Par jordan44 dans le forum VBA Access
    Réponses: 2
    Dernier message: 10/10/2008, 06h50

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