KutoolsforOffice — Одно решение — пять мощных инструментов.Меньше усилий — больше результата.

Как добавить разные подписи для нескольких учётных записей электронной почты при ответе или пересылке в Outlook?

АвторАманда ЛиДата изменения

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

Конечно! Чтобы автоматически добавлять подпись Outlook при ответе на новое сообщение или его пересылке, выберите Подпись > Подписи и укажите подпись для нужной учётной записи электронной почты, как показано ниже.

шаги добавления разных подписей к нескольким учетным записям электронной почты при ответе или пересылке в Outlook

А что делать, если у вас множество учётных записей и вы хотите массово назначить для каждой из них свою подпись? В этом руководстве я покажу вам простой метод на основе VBA, который легко справится с этой задачей.


Добавление разных подписей для нескольких учётных записей электронной почты при ответе или пересылке в Outlook

1. В Outlook нажмите клавиши Alt+F11, чтобы открыть окно Microsoft Visual Basic for Applications.

2. В окне Microsoft Visual Basic for Applications дважды щёлкните элемент ThisOutlookSession на панели «Проект» и скопируйте приведённый ниже код VBA в окно ThisOutlookSession (Код). См. снимок экрана:

шаги добавления разных подписей к нескольким учетным записям электронной почты при ответе или пересылке в Outlook

Код 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 в окно модуля.

шаги добавления разных подписей к нескольким учетным записям электронной почты при ответе или пересылке в Outlook

Код 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: ") Then
      xSignatureFile = xSignaturePath & "Signature1.htm" 'Replace "Signature1" with your actual signature name that you will set as the signature when you reply to a message.
    ElseIf VBA.InStr(xSubject, "FW: ") Then
      xSignatureFile = xSignaturePath & "Signature2.htm" 'Replace "Signature2" with your actual signature name that you will set as the signature when you forward a message.
    Else
      xIsNew = True
      Exit Sub
    End If
  Case "name2@example.com" 'Replace the email address in double quotes
    If VBA.InStr(xSubject, "RE: ") Then
      xSignatureFile = xSignaturePath & "Signature3.htm" 'Replace "Signature3" with your actual signature name that you will set as the signature when you reply to a message.
    ElseIf VBA.InStr(xSubject, "FW: ") Then
      xSignatureFile = xSignaturePath & "Signature4.htm" 'Replace "Signature4" with your actual signature name that you will set as the signature when you forward a message.
    Else
      xIsNew = True
      Exit Sub
    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) Вам следует заменить Signature в 41-й, 43-й, 50-й и 52-й строках на ваши фактические имена подписей согласно комментариям.
  • 3) С помощью приведённого выше кода VBA можно добавлять подписи для двух учётных записей электронной почты. Если у вас больше учётных записей, замените строку 57 на дополнительные операторы Case:
  • Case «name@example.com»
    If VBA.InStr(xSubject, «RE: ») = 1 Then
    xSignatureFile = xSignaturePath & "Signature1.htm"
    ElseIf VBA.InStr(xSubject, «FW: ») = 1 Then
    xSignatureFile = xSignaturePath & "Signature2.htm"
    Else
    xIsNew = True
    Exit Sub
    End If

4. В окне Microsoft Visual Basic for Applications выберите Сервис > Параметры, установите флажок рядом с Microsoft Word 16,0 Object Library и нажмите ОК.

шаги добавления разных подписей к нескольким учетным записям электронной почты при ответе или пересылке в Outlook

5. Перезапустите Outlook и сохраните коды VBA.

6. Теперь при ответе на сообщение или его пересылке с учётной записи электронной почты, для которой настроена подпись, она будет добавляться автоматически.

Примечание: Если при ответе на сообщение или его пересылке с учётной записи электронной почты отображаются две подписи, нажмите Подпись > Подписи в окне сообщения. В разделе «Выбор подписи по умолчанию» выберите учётную запись с двумя подписями и установите значение (нет) в раскрывающемся списке поля «Ответы/пересылки».

шаги добавления разных подписей к нескольким учетным записям электронной почты при ответе или пересылке в Outlook

Связанные статьи

Как импортировать или вставить HTML-подпись в Outlook?

Например, вы скачали несколько HTML-подписей с веб-сайтов и хотите импортировать их в Outlook. Существует ли простой способ сделать это? В этой статье пошагово описано, как импортировать или вставлять HTML-подписи в Outlook.

Как добавить цвет фона в подпись Outlook?

Добавить или удалить цвет фона в письме Outlook легко. Но как добавить или удалить цвет фона в подписи Outlook? Ниже приведены способы решения этой задачи:

Как добавить разные подписи для нескольких учётных записей электронной почты при создании нового письма в Outlook?

Если вы хотите, чтобы Outlook автоматически добавлял подпись при создании нового сообщения, нужно настроить подпись по умолчанию: выберите «Подпись» → «Подписи» и укажите нужную подпись для конкретной учётной записи электронной почты, как показано ниже. Но что делать, если у вас множество учётных записей и вы хотите массово назначить разные подписи для всех них? В этом руководстве я покажу вам метод на основе VBA, который легко решит эту задачу.

Как настроить разные подписи для ответов и пересылок в Outlook?

Обычно в Outlook можно настроить разные подписи для разных учётных записей, но пробовали ли вы использовать отдельные подписи для ответов и пересылок? То есть чтобы при ответе на письмо автоматически вставлялась подпись 1, а при пересылке — подпись 2. Как реализовать это в Outlook?


Лучшие инструменты для повышения продуктивности в Office

Оцените совершенно новый Kutools для Outlook с 100+ потрясающими функциями!Нажмите, чтобы скачать прямо сейчас!

🤖KUTOOLS AI:Использует передовые технологии ИИ для простой работы с электронной почтой: ответы, резюмирование, оптимизация, расширение, перевод и создание писем.

📧Автоматизация электронной почты: Автоответ (доступен для POP и IMAP) / Планирование отправки писем / Авто Копия/Скрытая копия по правилам при отправке писем / Автоматическое перенаправление (расширенное правило) / Автоматическое добавление приветствия / Автоматическое разделение писем с несколькими получателями на отдельные сообщения…

📨Управление электронной почтой: Отзыв письма / Блокировка мошеннических писем по темам и другим параметрам / Удаление дубликатов писем / Расширенный поиск / Организация папок…

📁Продвинутая работа с вложениями: Пакетное сохранение / Пакетное отсоединение / Пакетное сжатие / Автосохранение / Автоматическое отсоединение / Автоматическое сжатие…

🌟Волшебный интерфейс: 😊Еще больше красивых и стильных эмодзи / Напоминание о важных письмах / Сворачивание Outlook вместо закрытия…

👍Чудеса в один клик: Ответить всем с вложениями / Защита от фишинговых писем / 🕘Отображение часового пояса: текущее время отправителя…

👩🏼‍🤝‍👩🏻Контакты и календарь: Пакетное добавление контактов из выбранных писем / Разделение группы контактов на отдельные / Удаление напоминания о дне рождения…

Используйте Kutools на предпочитаемом языке — поддержка английского, испанского, немецкого, французского, китайского и более чем 40 других языков!

Мгновенно получите доступ к Kutools для Outlook одним кликом! Не теряйте времени — скачайте прямо сейчас и повысьте свою эффективность!

kutools for outlook features1kutools for outlook features2

🚀 Скачать одним кликом — Получите все надстройки для Office

Настоятельно рекомендуется: Kutools for Office (5 в 1)

Скачайте одним кликом пять установщиковсразу —Kutools для Excel, Outlook, Word, PowerPointи Office Tab Pro.Нажмите, чтобы скачать прямо сейчас!

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