Macro outlook pour envoyer un accusé de réception enrichi

Soyez le premier à donner votre avis sur cette source.

Snippet vu 8 678 fois - Téléchargée 18 fois


Contenu du snippet

Cette macro VBA-Outlook exécutée à partir d'une règle de réception de message envoi à l'expéditeur un accusé de réception enrichi.

Ici, il indique le nombre de le nom de chacune des des pièces jointes du message. Vous pouvez vous en inspirer pour créer d'autres types d'accusés de réception.

Source / Exemple :


'Macro générant un accusé réception enrichi
'Cette macro doit être appelée par une règle de message (exécuter un script)
'Adapté à partir du code fournit dans cette page : http://www.outlookcode.com/article.aspx?id=62
Sub ARdeMessage(MyMail As MailItem)

    Dim strID As String
    Dim CRLF As String 'Retour à la ligne
    Dim TexteAR As String 'Contient le texte qui sera inséré dans le corps du message
    Dim objMail As Outlook.MailItem
    Dim MessageAR As Outlook.MailItem 'Mail d'accusé de réception qui sera envoyé
    Dim PJcourante As Outlook.Attachment

'Initialisations
    CRLF = Chr(10) & Chr(13) 'Initialisation du retour à la ligne
    'L'utilisation de EntryID permet d'éviter les boîtes de dialogue de sécurité
    strID = MyMail.EntryID
    Set objMail = Application.Session.GetItemFromID(strID)

'Construstion du texte d'accusé réception
    TexteAR = "J'ACCUSE RÉCEPTION DU MESSAGE CI-DESSOUS ENVOYÉ A " & objMail.To
    TexteAR = TexteAR & CRLF & "Il contenait " & objMail.Attachments.Count

'Création de la liste des pièces jointes s'il y en a
    If objMail.Attachments.Count <> 0 Then
        If objMail.Attachments.Count = 1 Then
            TexteAR = TexteAR & " pièce jointe dont le nom est :"
        Else
            TexteAR = TexteAR & " pièces jointes dont les noms sont les suivants :"
        End If
        For Each PJcourante In objMail.Attachments
            TexteAR = TexteAR & CRLF & PJcourante.FileName
        Next
    Else
        TexteAR = TexteAR & " pièce jointe."
    End If

'Création du message
    Set MessageAR = objMail.Reply
'Insertion du texte d'accusé de réception
    MessageAR.Body = TexteAR & CRLF & MessageAR.Body
'Envoi
    MessageAR.Send

'Destruction des objets créés
    Set objMail = Nothing
    Set MessageAR = Nothing

End Sub

Conclusion :


ATTENTION :
Je n'ai pas testé cette version spéciale "Codes Sources" car j'ai du faire des modifications par rapport à la version actuellement en fonctionnement pour la rendre universelle : par exemple, l'adresse qui accuse réception était codée en dur, je l'ai remplacé par "objMail.To"
Le projet compile dans VBA, cela devrait fonctionner. Néanmoins, si vous rencontrez des problèmes, signalez le moi pour que je corrige.

A voir également

Ajouter un commentaire

Commentaires

Génial, cela fontionne très bien !!
CPMF
Messages postés
2
Date d'inscription
samedi 11 mars 2006
Statut
Membre
Dernière intervention
8 août 2011
-
Je l'ai testé ça marche au premier coup (et les suivants) !
Exemple de script pour outlook très simple.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.