De nombreux utilisateurs espèrent qu'Outlook pourra sélectionner automatiquement les différentes signatures pour différents destinataires dans les e-mails. Ainsi, cet article vous apprendra comment le réaliser via VBA.
Par défaut, Outlook vous permet uniquement d'insérer automatiquement la signature variable dans les nouveaux e-mails, réponses et transferts. Cependant, de nombreuses personnes espèrent même qu'Outlook pourra sélectionner automatiquement les différentes signatures pour différents destinataires. Malheureusement, Outlook ne fournit pas une telle fonctionnalité directe. Ainsi, vous devez rechercher d'autres moyens, tels que des compléments tiers ou du code VBA. Maintenant, dans ce qui suit, nous allons vous dévoiler un morceau de code VBA, qui peut vous aider à le réaliser comme un jeu d'enfant.

Sélection automatique de différentes signatures pour différents destinataires
- À start avec, vous devez lancer votre programme Outlook.
- Ensuite, vous feriez mieux de désactiver la fonction d'insertion automatique de signature.
- Tout d'abord, allez dans le menu "Fichier" et sélectionnez "Options".
- Dans la fenêtre "Outlook Options", passez à l'onglet "Mail".
- Ensuite, recherchez et cliquez sur le bouton "Signatures".
- Ensuite, dans la boîte de dialogue contextuelle, définissez "(aucun)" dans les deux "Nouveaux messages" et "Réponses/Transferts".
- Après cela, cliquez sur une série de "OK" pour enregistrer les modifications.
- Après cela, vous pouvez revenir à la fenêtre principale d'Outlook et appuyer sur les touches "Alt + F11".
- Ensuite, dans la fenêtre "Microsoft Visual Basic pour Applications", recherchez et ouvrez le projet "ThisOutlookSession".
- Ensuite, copiez et collez le code VBA suivant dans ce projet.
Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
Dim objMail As Outlook.MailItem
Dim objRecipients As Outlook.Recipients
Dim objRecipient As Outlook.recipient
Dim strRecipientAddress As String
Dim strSignatureFile As String
Dim objFileSystem As Object
Dim objTextStream As Object
Dim strSignature As String
If TypeOf Item Is MailItem Then
Set objMail = Item
Set objRecipients = objMail.Recipients
End If
'Select different signature files based on recipients
'You can change the conditions as per you actual needs
If objRecipients.Count = 1 Then
Set objRecipient = objRecipients.Item(1)
strRecipientAddress = objRecipient.Address
If strRecipientAddress = "mandy@datanumen.com" Then
strSignatureFile = CStr(Environ("USERPROFILE")) & "\AppData\Roaming\Microsoft\Signatures\Test John Smith.htm"
ElseIf strRecipientAddress = "anne@datanumen.com" Or strRecipientAddress = "tony@datanumen.com" Then
strSignatureFile = CStr(Environ("USERPROFILE")) & "\AppData\Roaming\Microsoft\Signatures\Johnny.htm"
ElseIf strRecipientAddress = "abby@datanumen.com" Then
strSignatureFile = CStr(Environ("USERPROFILE")) & "\AppData\Roaming\Microsoft\Signatures\New John Smith.htm"
End If
Else
strSignatureFile = CStr(Environ("USERPROFILE")) & "\AppData\Roaming\Microsoft\Signatures\John Smith.htm"
End If
'Read the specific signature file
Set objFileSystem = CreateObject("Scripting.FileSystemObject")
Set objTextStream = objFileSystem.OpenTextFile(strSignatureFile)
strSignature = objTextStream.ReadAll
'Insert the signature to this email
objMail.HTMLBody = objMail.HTMLBody & "<HTML><BODY><br>" & strSignature & "</br></HTML></BODY>"
End Sub
- Après cela, vous devez signer ce code.
- Modifiez ultérieurement vos paramètres de macro Outlook pour autoriser les macros signées.
- Désormais, chaque fois que vous cliquez sur le bouton "Envoyer" pour envoyer un e-mail, Outlook identifie le destinataire et insère automatiquement la signature correspondante à la fin du corps de l'e-mail.
Faites attention aux macros malveillantes cachées dans les e-mails entrants
De nos jours, les virus sont devenus très matures et puissants. Ils les déguisent toujours en choses anodines dans le courrier électronique. Par conséquent, maintenant que vous avez l'intention d'utiliser des macros dans Outlook, vous devez augmenter votre vigilance contre les macros malveillantes. Sinon, vos données PST seront conservées à risque. Si PST est corrompu, vous ferez de votre mieux pour récupérer PST données. Dans ce cas, il est suggéré d'appliquer un outil puissant, tel que DataNumen Outlook Repair.
Introduction de l'auteur:
Shirley Zhang est une experte en récupération de données dans DataNumen, Inc., qui est le leader mondial des technologies de récupération de données, y compris correction sql et produits logiciels de réparation Outlook. Pour plus d'informations, visitez www.datanumen.com

