Перейти до основного матеріалу

Як додати різні підписи до кількох облікових записів електронної пошти під час створення нового електронного листа в Outlook?

З підручника: Підписи електронної пошти в Outlook, ви повинні знати, як створити підпис в Outlook. Однак після створення нового підпису вам доведеться додати створений підпис до нового повідомлення вручну, вибравши Підпис > Створений підпис у вікні повідомлення.

Звичайно, ви можете зробити так, щоб Outlook автоматично додавав підпис під час створення нового повідомлення, клацнувши Підпис > Signaturesі вибрати підпис для певного облікового запису електронної пошти, як показано нижче.

Однак що робити, якщо у вас багато облікових записів електронної пошти і ви хочете додати різні підписи для кількох облікових записів пакетами? У цьому підручнику я розповім про метод VBA, який допоможе вам легко виконати цю роботу.


Додайте різні підписи до кількох облікових записів електронної пошти під час створення нового електронного листа в Outlook

1. У програмі Outlook натисніть інший + 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 натисніть Insert > Модулі. Потім скопіюйте наступний код 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 "" '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 "" '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) Ви повинні замінити та у 39-му та 48-му рядках на ваші фактичні адреси електронної пошти.
  • 2) Ви повинні замінити Підпис 1 та Підпис 2 у 45-му та 54-му рядках до ваших фактичних імен підпису.
  • 3) За допомогою наведеного вище коду VBA ми можемо додати підписи до двох облікових записів електронної пошти. Якщо у вас більше облікових записів, замініть 57-й рядок коду на інші випадки:
  • випадок ""
    Якщо VBA.InStr(xSubject, "RE: ") = 1 Тоді
    Exit Sub
    ElseIf VBA.InStr(xSubject, "FW: ") = 1 Тоді
    Exit Sub
    Ще
    xSignatureFile = xSignaturePath & "Signature.htm"
    xIsNew = Правда
    End If

4. У вікні Microsoft Visual Basic for Applications натисніть Tools > посилання, поставте прапорець біля Бібліотека об’єктів Microsoft Word 16.0, і клацніть OK.

5. Перезапустіть Outlook і збережіть коди VBA.

6. Тепер, коли ви створюєте нове повідомлення з обліковим записом електронної пошти, для якого ви встановили підпис, відповідний підпис буде додано автоматично.

Примітка: Якщо ви виявите, що під час створення нового повідомлення з обліковим записом електронної пошти додано два підписи, натисніть Підпис > Signatures у вікні повідомлення. У розділі «Вибрати підпис за замовчуванням» виберіть обліковий запис електронної пошти з двома підписами та виберіть (Ні) зі спадного списку Нові повідомлення.


Статті по темі

Як імпортувати або вставити HTML-підписи в Outlook?

Наприклад, ви завантажили деякі підписи HTML з веб-сайтів і хочете імпортувати їх у свій Outlook. Якісь прості способи? Ця стаття допоможе вам крок за кроком імпортувати чи вставляти підписи HTML в Outlook.

Як вставити колір фону в підпис Outlook?

Додавати або видаляти фоновий колір в електронному листі в Outlook легко. Але як можна вставити або видалити фоновий колір у підписі Outlook? Наведені нижче обхідні шляхи допоможуть вам вирішити цю проблему.

Як додати різні підписи до кількох облікових записів електронної пошти під час відповіді чи пересилання в Outlook?

Якщо ви хочете, щоб Outlook автоматично додавав підпис, коли ви відповідаєте на повідомлення або пересилаєте його, вам потрібно буде налаштувати підпис за замовчуванням, натиснувши «Підпис» > «Підписи» та вибравши підпис для певного облікового запису електронної пошти, як показано нижче. Однак що робити, якщо у вас багато облікових записів електронної пошти і ви хочете додати різні підписи для кількох облікових записів пакетами? У цьому підручнику я розповім про метод VBA, який допоможе вам легко виконати цю роботу.

Як встановити різні підписи для відповідей і пересилань у Outlook?

Зазвичай ви можете встановити різні підписи для різних облікових записів у своєму Outlook, але коли-небудь намагалися застосовувати різні підписи для відповідей та переадресації. Це означає, що коли ви відповідаєте на електронне повідомлення, підпис1 вставляється, коли ви пересилаєте електронне повідомлення, підпис2 застосовується. Як ви могли вирішити це завдання в Outlook?


Найкращі інструменти продуктивності офісу

Kutools для Outlook - Понад 100 потужних функцій, які покращать ваш Outlook

🤖 AI Mail Assistant: Миттєві професійні електронні листи з магією штучного інтелекту – геніальні відповіді одним клацанням, ідеальний тон, багатомовна майстерність. Трансформуйте електронну пошту без зусиль! ...

???? Автоматизація електронної пошти: Поза офісом (доступно для POP та IMAP)  /  Розклад надсилання електронних листів  /  Автоматична копія/прихована копія за правилами під час надсилання електронної пошти  /  Автоматичне пересилання (розширені правила)   /  Автоматично додавати привітання   /  Автоматично розділяйте електронні листи кількох одержувачів на окремі повідомлення ...

📨 Управління електронною поштою: Легко відкликайте електронні листи  /  Блокуйте шахрайські електронні листи за темами та іншими  /  Видалити повторювані електронні листи  /  розширений пошук  /  Консолідація папок ...

📁 Вкладення ProПакетне збереження  /  Пакетне від'єднання  /  Пакетний компрес  /  Автозавантаження   /  Автоматичне від'єднання  /  Автокомпресія ...

???? Магія інтерфейсу: 😊Більше красивих і класних смайликів   /  Підвищте продуктивність Outlook за допомогою вкладок  /  Згорніть Outlook замість того, щоб закривати ...

👍 Дива в один клік: Відповісти всім із вхідними вкладеннями  /   Антифішингові електронні листи  /  🕘Показувати часовий пояс відправника ...

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

більше Особливості 100 Чекайте на ваше дослідження! Натисніть тут, щоб дізнатися більше.

 

 

Comments (1)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Hi,
I tried to initiate this settings in my outlook for changing the signature automatically, but it doesn't function.

the signature stays the same while using different email accounts.

any idea why ?
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations