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.
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.