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 :

Envoi de mail par macro VBA


Sujet :

Macros et VBA Excel

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Femme Profil pro
    Chef de projet MOA
    Inscrit en
    Mai 2023
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2023
    Messages : 9
    Par défaut Envoi de mail par macro VBA
    Bonjour à tous,

    J'ai rédigé une macro pour envoyer des mails automatiques en joignant un pdf par outlook.

    Tout fonctionne bien MAIS je souhaiterais mettre un format sur mon corps de texte.
    Aujourd'hui avec ma technique cela ne met aucun espace ni saut de ligne.
    je joins un exemple de mon fichier (onglet 1) et voici le code que j'utilise :



    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
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
     
     
     
    Sub EnvoiMail()
     
     
    Dim Suivi_Anim, Onglet, definition_objet
     
     
     
     
    '*****************************************'
    'Macro permettant l'envoi par mail du PDF '
    '*****************************************'
    '-----------------------------------'
    'Impression en PDF pour PJ Mail     '
    '-----------------------------------'
    Sheets("Pilote").Activate
    <div style="text-align: right;">
     
    colonne_nom_ifs = Sheets("Pilote").Range("COL_NOM_IFS_SORTIE").Value
    col_filtre_fiche_ifs = Sheets("Pilote").Range("COLONNE_FILTRE_PARTICIPATION_FICHE_IFS").Value
    valeur_filtre_fiche_ifs = Sheets("Pilote").Range("VALEUR_FILTRE_PARTICIPATION_FICHE_IFS").Value
     
    objet_mail = Sheets("Pilote").Range("FICHE_IFS_OBJET_MAIL").Value
    corps_mail = Sheets("Pilote").Range("FICHE_IFS_CORPS_MAIL").Value
    date_maj = Sheets("Procédure").Range("DATE_MAJ_CUBE").Value
     
    Sheets("Procédure").Activate
    Chemin = Range("CHEMIN_ENR_PDF").Value
    'C:\Documents\FICHES_IFS\
     
    Sheets("IFS_").Activate
     
    For Each ligne In Range("F9:F21").SpecialCells(xlCellTypeVisible).Rows
        i = ligne.Row
     
     
        nom_ifs = Sheets("IFS_").Cells(i, colonne_nom_ifs).Value
     
        Sheets("Fiche_IFS").Activate
        Range("FICHE_IFS_SELECTIONNE").Value = nom_ifs
     
     
        Calculate
     
     
        ActiveSheet.Range("$C$7:$CR$21").AutoFilter Field:=col_filtre_fiche_ifs, Criteria1:=valeur_filtre_fiche_ifs
     
        If nom_ifs <> "" Then
        </div>        ad_mail = Range("FICHE_IFS_AD_MAIL_A").Value
            ad_mail_cc = Range("FICHE_IFS_AD_MAIL_CC").Value
     
            Onglet = ActiveSheet.Name
            Sheets(Onglet).Select
     
            Nom = Range("FICHE_IFS_NOM_PDF").Value
     
     
            Chemin_IFS = Chemin & nom_ifs
     
            '----------------------------------'
            'Enregistrement en PDF de la fiche '
            '----------------------------------'
            ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, FileName:= _
            Chemin & Nom, Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
            :=False, OpenAfterPublish:=False
     
            '--------------------'
            'Préparation du mail '
            '--------------------'
     
            Dim OlApp As Object
            Dim OlItem As Object
     
            Set OlApp = CreateObject("Outlook.application")
            Set OlItem = OlApp.CreateItem(0)
            With OlItem
     
            '----------------------------------------------------------------'
            'To, CC = saisie des adresses mail par l'utilisateur de la macro '
            '----------------------------------------------------------------'
             .To = ad_mail
             .CC = ad_mail_cc
     
            '---------------'
            ' Objet du mail '
            '---------------'
             .Subject = objet_mail
     
             'Corps du mail
     
            '--------------------------------------------------------------------------------------'
            'Pièce jointe : PDF qui vient d'être crée pour possibilité d'imprimer sous bon format  '
            '--------------------------------------------------------------------------------------'
             .Attachments.Add (Chemin & Nom)
     
            '-----------------------------------------------------------------------------------------------'
            'Format du corps de mail : HTML + insère l'image créee precedemment dans le repertoire "C\Temp" '
            '--------------------------------------------------------------------------------------'
            .BodyFormat = 2
            .HTMLBody = corps_mail
     
     
            .display
            OlItem.send
     
            '------------------------'
            'Retour au fichier Excel '
            '------------------------'
            End With
     
        Sheets("Fiche_IFS").Activate
        ActiveSheet.ShowAllData
     
        End If
     
     
        Sheets("IFS_").Activate
     
     
    Next ligne
     
    End Sub
    Fichiers attachés Fichiers attachés

Discussions similaires

  1. [OL-2016] Envoi de mails par Access-VBA en utilisant un modèle .oft
    Par Depite dans le forum Outlook
    Réponses: 2
    Dernier message: 01/10/2018, 14h38
  2. [OL-2010] Message d'alerte quand envoi de mail par VBA
    Par Daejung dans le forum VBA Outlook
    Réponses: 5
    Dernier message: 13/02/2012, 12h53
  3. [XL-2003] Envoi de mail par Lotus Notes 8.5 en VBA
    Par Sécateur dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 01/11/2011, 07h17
  4. [XL-2003] Envoi de mail par VBA
    Par setepenre dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 10/02/2011, 14h48
  5. [Toutes versions] ouvrir lotus et envoi de mail par VBA
    Par olivier45fr dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 23/03/2010, 16h38

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