Как добавить разные подписи к нескольким учетным записям электронной почты при создании нового письма в Outlook?
Из руководства: Email Signatures In Outlook, вы должны знать, как создать подпись в Outlook. Однако после создания новой подписи вам придется вручную добавлять созданную подпись в новое сообщение, выбрав Подпись > Созданная подпись в окне сообщения.
Конечно, можно настроить автоматическое добавление подписи в Outlook при создании нового сообщения, нажав Подпись > Подписи и выбрав подпись для конкретной учетной записи электронной почты, как показано ниже.

Однако что делать, если у вас много учетных записей электронной почты и вы хотите добавить разные подписи для нескольких учетных записей одновременно? В этом руководстве я представлю метод VBA, который поможет вам легко выполнить эту задачу.
Добавление разных подписей к нескольким учетным записям электронной почты при создании нового письма в Outlook
1. В вашем Outlook нажмите клавиши Alt + F11, чтобы открыть окно Microsoft Visual Basic for Applications.
2. В окне Microsoft Visual Basic for Applications дважды щелкните ThisOutlookSession в области Проекта и скопируйте следующий код VBA в окно ThisOutlookSession (Код). См. скриншот:

Код VBA: Добавление разных подписей к нескольким учетным записям электронной почты при создании нового письма в Outlook - ThisOutlookSession
Public WithEvents GInspectors As Inspectors
Public WithEvents GExplorer As Explorer
Private Sub Application_Startup()
Set GInspectors = Application.Inspectors
Set GExplorer = Application.ActiveExplorer
End Sub
Private Sub GExplorer_InlineResponse(ByVal Item As Object)
‘Update by ExtendOffice
Dim xMail As MailItem
On Error Resume Next
EndTimer
If Item.Class = olMail Then
Set xMail = Item
Set GInspector = Nothing
Set GInspector = xMail.GetInspector
StartTimer
End If
End Sub
Private Sub GInspectors_NewInspector(ByVal Inspector As Inspector)
On Error Resume Next
EndTimer
Set GInspector = Nothing
Set GInspector = Inspector
StartTimer
End Sub
3. В окне Microsoft Visual Basic for Applications нажмите Вставить > Модуль. Затем скопируйте следующий код VBA в окно Модуль.

Код VBA: Добавление разных подписей к нескольким учетным записям электронной почты при создании нового письма в Outlook - Модуль
Public Declare PtrSafe Function SetTimer Lib "user32" (ByVal HWnd As Long, ByVal nIDEvent As Long, ByVal uElapse As Long, ByVal lpTimerFunc As LongPtr) As Long
Public Declare PtrSafe Function KillTimer Lib "user32" (ByVal HWnd As Long, ByVal nIDEvent As Long) As Long
Public TimerID As Long
Public GInspector As Inspector
Sub StartTimer()
On Error Resume Next
TimerID = SetTimer(0&, 0&, 1000&, AddressOf TimerProc)
End Sub
Sub EndTimer()
On Error Resume Next
KillTimer 0&, TimerID
End Sub
Sub TimerProc(ByVal HWnd As Long, ByVal uMsg As Long, ByVal nIDEvent As Long, ByVal dwTimer As Long)
On Error Resume Next
Call SetSignatureToAccount
EndTimer
End Sub
Sub SetSignatureToAccount()
‘Update by ExtendOffice
Dim xMail As MailItem
Dim xSignatureFile, xSignaturePath As String
Dim xSubject As String
Dim xDoc As Document
Dim xAccount As Account
Dim xIsNew As Boolean
Dim xInspector As Inspector
Const PR_SMTP_ADDRESS As String = "http://schemas.microsoft.com/mapi/proptag/0x39FE001E"
On Error Resume Next
xSignaturePath = CreateObject("WScript.Shell").SpecialFolders(5) + "\Microsoft\Signatures\"
xSubject = GInspector.Caption
Set xDoc = GInspector.WordEditor
xIsNew = False
Set xMail = GInspector.CurrentItem
Select Case xMail.Parent.Parent
Case "name1@example.com" 'Replace the email address in double quotes
If VBA.InStr(xSubject, "RE: ") = 1 Then
Exit Sub
ElseIf VBA.InStr(xSubject, "FW: ") = 1 Then
Exit Sub
Else
xSignatureFile = xSignaturePath & "Signature1.htm" 'Replace "Signature1" with your actual signature name
xIsNew = True
End If
Case "name2@example.com" 'Replace the email address in double quotes
If VBA.InStr(xSubject, "RE: ") Then
Exit Sub
ElseIf VBA.InStr(xSubject, "FW: ") Then
Exit Sub
Else
xSignatureFile = xSignaturePath & "Signature2.htm" 'Replace "Signature2" with your actual signature name
xIsNew = True
End If
'Add more Cases for more email accounts
End Select
If xIsNew = True Then
With xDoc.Application.Selection
.WholeStory
.EndKey
.InsertParagraphAfter
.MoveDown Unit:=wdLine, Count:=1
.InsertFile FileName:=xSignatureFile, Link:=False, Attachment:=False
End With
Else
With xDoc.Application.Selection
.MoveRight Unit:=wdCharacter, Count:=1
.HomeKey Emptyparam, Emptyparam
.InsertFile FileName:=xSignatureFile, Link:=False, Attachment:=False
End With
End If
Set xDoc = Nothing
Set GInspector = Nothing
Set xMail = Nothing
End Sub
- 1) Вам нужно заменить name1@example.com и name2@example.com в 39-й и 48-й строках на ваши реальные адреса электронной почты.
- 2) Вам нужно заменить Signature1 и Signature2 в 45-й и 54-й строках на ваши реальные названия подписей.
- 3) С помощью приведенного выше кода VBA мы можем добавить подписи к двум учетным записям электронной почты. Если у вас больше учетных записей, замените 57-ю строку кода дополнительными случаями:
If VBA.InStr(xSubject, "RE: ") = 1 Then
Exit Sub
ElseIf VBA.InStr(xSubject, "FW: ") = 1 Then
Exit Sub
Else
xSignatureFile = xSignaturePath & "Signature.htm"
xIsNew = True
End If
4. В окне Microsoft Visual Basic for Applications нажмите Инструменты > Ссылки, отметьте галочкой библиотеку Microsoft Word 16.0 Object Library и нажмите OK.

5. Перезапустите Outlook и сохраните коды VBA.
6. Теперь, когда вы создаете новое сообщение с учетной записью электронной почты, для которой настроена подпись, соответствующая подпись будет добавлена автоматически.
Примечание: Если вы заметили, что при создании нового сообщения с учетной записью электронной почты добавлены две подписи, пожалуйста, нажмите Подпись > Подписи в окне сообщения. В разделе Выбор подписи по умолчанию выберите учетную запись электронной почты, у которой две подписи, и выберите (none) из выпадающего списка Новые сообщения.

Связанные статьи
Как импортировать или вставить HTML-подписи в Outlook?
Например, вы скачали несколько HTML-подписей с сайтов и хотите импортировать их в ваш Outlook. Есть ли простые способы? Эта статья проведет вас через процесс импорта или вставки HTML-подписей в Outlook пошагово.
Как вставить цвет фона в подпись Outlook?
Легко добавить или удалить цвет фона в электронном письме в Outlook. Но как вставить или удалить цвет фона в подписи Outlook? Ниже представлены обходные пути, которые помогут вам решить эту проблему:
Если вы хотите, чтобы Outlook автоматически добавлял подпись при ответе или пересылке сообщения, вам нужно настроить подпись по умолчанию, нажав Подпись > Подписи и выбрав подпись для конкретной учетной записи электронной почты, как показано ниже. Однако что делать, если у вас много учетных записей электронной почты и вы хотите добавить разные подписи для нескольких учетных записей одновременно? В этом руководстве я представлю метод VBA, который поможет вам легко выполнить эту задачу.
Как установить разные подписи для ответов и пересылок в Outlook?
Обычно вы можете установить разные подписи для разных учетных записей в вашем Outlook, но пробовали ли вы применять разные подписи для ответов и пересылок? Это означает, что при ответе на письмо вставляется подпись1, а при пересылке письма применяется подпись2. Как решить эту задачу в Outlook?
Лучшие инструменты для повышения продуктивности работы с Office
Срочные новости: бесплатная версия Kutools для Outlook уже доступна!
Оцените обновленный Kutools для Outlook с более чем100 невероятными функциями! Нажмите, чтобы скачать прямо сейчас!
📧 Автоматизация Email: Автоответчик (Доступно для POP и IMAP) / Запланировать отправку писем / Авто Копия/Скрытая копия по правилам при отправке писем / Автоматическое перенаправление (Расширенное правило) / Автоматически добавить приветствие / Авторазделение Email с несколькими получателями на отдельные письма ...
📨 Управление Email: Отозвать письмо / Блокировать вредоносные письма по теме и другим критериям / Удалить дубликаты / Расширенный Поиск / Организовать папки ...
📁 Вложения Pro: Пакетное сохранение / Пакетное открепление / Пакетное сжатие / Автосохранение / Автоматическое отсоединение / Автоматическое сжатие ...
🌟 Волшебство интерфейса: 😊Больше красивых и стильных эмодзи / Напоминание при поступлении важных писем / Свернуть Outlook вместо закрытия ...
👍 Удобные функции одним кликом: Ответить всем с вложениями / Антифишинговая Email / 🕘Показать часовой пояс отправителя ...
👩🏼🤝👩🏻 Контакты и Календарь: Пакетное добавление контактов из выбранных Email / Разделить группу контактов на отдельные / Удалить напоминание о дне рождения ...
Используйте Kutools на вашем языке – поддерживаются Английский, Испанский, Немецкий, Французский, Китайский и более40 других!


🚀 Скачайте все дополнения Office одним кликом
Рекомендуем: Kutools для Office (5-в-1)
Скачайте сразу пять установщиков одним кликом — Kutools для Excel, Outlook, Word, PowerPoint и Office Tab Pro. Нажмите, чтобы скачать прямо сейчас!
- ✅ Все просто: скачайте все пять установочных пакетов одним действием.
- 🚀 Готово для любой задачи Office: Установите нужные дополнения тогда, когда они вам понадобятся.
- 🧰 Включено: Kutools для Excel / Kutools для Outlook / Kutools для Word / Office Tab Pro / Kutools для PowerPoint