Mnoho uživatelů doufá, že Outlook dokáže automaticky vybrat různé podpisy pro různé příjemce v e-mailech. Tento článek vás tedy naučí, jak to realizovat prostřednictvím VBA.
Ve výchozím nastavení vám Outlook umožňuje pouze automatické vkládání různých podpisů do nových e-mailů, odpovědí a přeposílání. Mnoho lidí však dokonce doufá, že Outlook dokáže automaticky vybrat různé podpisy pro různé příjemce. Bohužel Outlook takovou přímou funkci neposkytuje. Proto musíte hledat jiné způsoby, jako jsou jakékoli doplňky třetích stran nebo kód VBA. Nyní, v následujícím textu, vám odhalíme část kódu VBA, která vám pomůže jej realizovat jako vánek.

Automatický výběr různých podpisů pro různé příjemce
- Nejprve byste měli spustit program Outlook.
- Pak byste měli raději vypnout funkci automatického vkládání podpisu.
- Nejprve přejděte do nabídky „Soubor“ a vyberte „Možnosti“.
- V okně „Možnosti aplikace Outlook“ přejděte na kartu „Pošta“.
- Poté vyhledejte a klikněte na tlačítko „Podpisy“.
- Dále ve vyskakovacím dialogovém okně nastavte „(žádné)“ v „Nové zprávy“ a „Odpovědi/Přeposlat“.
- Poté kliknutím na řadu „OK“ uložte změny.
- Poté se můžete vrátit do hlavního okna aplikace Outlook a stisknout klávesy „Alt + F11“.
- Dále v okně „Microsoft Visual Basic for Applications“ najděte a otevřete projekt „ThisOutlookSession“.
- Následně zkopírujte a vložte následující kód VBA do tohoto projektu.
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
- Poté byste měli tento kód podepsat.
- Později změňte nastavení maker aplikace Outlook a povolte podepsaná makra.
- Od této chvíle pokaždé, když kliknete na tlačítko „Odeslat“ pro odeslání e-mailu, Outlook identifikuje příjemce a automaticky vloží odpovídající podpis na konec těla e-mailu.
Podívejte se na skrytá škodlivá makra v příchozích e-mailech
V dnešní době se viry staly velmi vyspělými a silnými. V e-mailu je vždy maskují jako neškodné věci. Proto nyní, když máte v úmyslu používat makra v aplikaci Outlook, měli byste zvýšit svou ostražitost před škodlivými makry. V opačném případě budou vaše data PST ohrožena. Pokud se PST poškodí, pokusíte se o to co nejlépe obnovit PST data. V tomto případě se doporučuje použít účinný nástroj, jako je např DataNumen Outlook Repair.
Úvod autora:
Shirley Zhang je expertem na obnovu dat DataNumen, Inc., která je světovým lídrem v oblasti technologií pro obnovu dat, včetně oprava sql a výhledové softwarové produkty pro opravy. Pro více informací navštivte www.datanumen.com

