Skip to main content

كيفية تغيير التوقيع تلقائيًا بناءً على المستلمين في Outlook؟

Author: Siluvia Last Modified: 2025-08-06

افتراضيًا، يحتوي Outlook على وظيفة مضمنة تتيح للمستخدمين تغيير التوقيع تلقائيًا أثناء إرسال رسائل البريد الإلكتروني من خلال حسابات بريد إلكتروني مختلفة. لكن إلى جانب ذلك، سأوضح لك طريقة لتغيير التوقيع تلقائيًا بناءً على المستلمين المختلفين في حقل "إلى" في Outlook.

تغيير التوقيع بناءً على المستلمين تلقائيًا باستخدام كود VBA


تغيير التوقيع بناءً على المستلمين تلقائيًا باستخدام كود VBA

يرجى اتباع الخطوات أدناه لتطبيق توقيعات مختلفة على المستلمين المعنيين أثناء إرسال رسائل البريد الإلكتروني في Outlook.

1. أولاً، تحتاج إلى تعطيل ميزة إرفاق التوقيع تلقائيًا في Outlook. يرجى النقر فوق ملف > الخيارات لفتح نافذة خيارات Outlook.

2. في نافذة خيارات Outlook، حدد البريد في الجزء الأيسر، ثم انقر فوق زر التواقيع في قسم كتابة الرسائل. انظر الصورة:

using vba to change signature based on recipients automatically with code

3. في مربع الحوار التواقيع والورق، انتقل إلى قسم اختيار التوقيع الافتراضي تحت علامة التبويب توقيع البريد الإلكتروني، واختر حساب بريد إلكتروني من قائمة حساب البريد الإلكتروني المنسدلة، ثم اختر (لا شيء) من قوائم الاختيار الخاصة بالالرسائل الجديدة والردود/إعادة الإرسال. كرر هذه الخطوات حتى يتم ضبط جميع حسابات البريد الإلكتروني على (لا شيء). بعد ذلك، انقر فوق الزر موافق.

using vba to change signature based on recipients automatically with VBA code

ملاحظة: يمكنك أيضًا إنشاء التواقيع التي تحتاجها في مربع الحوار التواقيع والورق.

4. انقر فوق الزر موافق عند العودة إلى نافذة خيارات Outlook.

5. اضغط على مفتاحي Alt + F11 لفتح نافذة Microsoft Visual Basic for Applications.

6. في نافذة Microsoft Visual Basic for Applications، انقر نقرًا مزدوجًا على ThisOutlookSession في الجزء الأيسر لفتح نافذة الكود، ثم انسخ الكود التالي VBA في النافذة. انظر الصورة:

using vba to change signature based on recipients automatically with VBA code

كود VBA: تغيير التوقيع تلقائيًا بناءً على المستلمين في Outlook

Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
'Updated by ExtendOffice 2022/08/01
Dim xMailItem As MailItem
Dim xRecipients As Recipients
Dim xRecipient As Recipient
Dim xRcpAddress As String
Dim xSignatureFile, xSignaturePath As String
Dim xFSO As Scripting.FileSystemObject
Dim xDoc As Document
Dim xFindStr As String
On Error Resume Next
Set xFSO = New Scripting.FileSystemObject
If Item.Class <> olMail Then Exit Sub
Set xMailItem = Item
Set xRecipients = xMailItem.Recipients
xSignaturePath = CreateObject("WScript.Shell").SpecialFolders(5) + "\Microsoft\Signatures\"
For Each xRecipient In xRecipients
    If xRecipient.AddressEntry.AddressEntryUserType = olExchangeUserAddressEntry Then
        xRcpAddress = xRecipient.AddressEntry.GetExchangeUser.PrimarySmtpAddress
    Else
        xRcpAddress = xRecipient.AddressEntry.Address
    End If
    Select Case xRcpAddress
        Case "Email Address 1"
            xSignatureFile = xSignaturePath & "aaa.htm"
            Exit For
        Case "Email Address 2", "Email Address 3"
            xSignatureFile = xSignaturePath & "bbb.htm"
            Exit For
        Case "Email Address 4"
            xSignatureFile = xSignaturePath & "ccc.htm"
            Exit For
    End Select
Next
VBA.DoEvents
Set xDoc = xMailItem.GetInspector.WordEditor
xFindStr = "From: " & xMailItem.Recipients.Item(1).Name & " <" & xRcpAddress & ">"
If VBA.InStr(1, xMailItem.Body, xFindStr) <> 0 Then
    xDoc.Application.Selection.HomeKey Unit:=wdStory, Extend:=wdMove
    With xDoc.Application.Selection.Find
        .ClearFormatting
        .Text = xFindStr
        .Execute Forward:=True
    End With
    With xDoc.Application.Selection
        .MoveLeft wdCharacter, 2
        .InsertParagraphAfter
        .MoveDown Unit:=wdLine, Count:=1
    End With
Else
    With xDoc.Application.Selection
        .EndKey Unit:=wdStory, Extend:=wdMove
        .InsertParagraphAfter
        .MoveDown Unit:=wdLine, Count:=1
    End With
End If
xDoc.Application.Selection.InsertFile FileName:=xSignatureFile, Link:=False, Attachment:=False
End Sub

ملاحظات:

  • 1). في كود VBA، يرجى استبدال "عنوان البريد الإلكتروني 1/2/3/4" بعناوين البريد الإلكتروني المحددة للمستلمين.
  • 2). "aaa.htm", "bbb.htm" و "ccc.htm" هي التواقيع المحددة التي سيتم إرسالها إلى المستلمين المعنيين.
  • 3). في هذه الحالة، سيتم إرسال التوقيع "aaa" إلى "عنوان البريد الإلكتروني 1"، وسيتم إرسال التوقيع "bbb" إلى "عنوان البريد الإلكتروني 2" و"عنوان البريد الإلكتروني 3"، و"عنوان البريد الإلكتروني 4" مع توقيع "ccc". يرجى تغييرها بناءً على احتياجاتك.
  • 4). إذا كان هناك عدة مستلمين في البريد الإلكتروني، فإن الكود يأخذ فقط المستلم الأول في الاعتبار. في هذه الحالة، سيتلقى المستلمون الآخرون نفس التوقيع الذي تم إرساله إلى المستلم الأول.

7. ثم انقر فوق أدوات > مراجع للانتقال إلى مربع الحوار مراجع-المشروع. في مربع الحوار، يرجى تحديد كل من مكتبة كائنات Microsoft Word ومكتبة تشغيل البرامج النصية Microsoft، ثم انقر فوق الزر موافق، انظر الصورة:

using vba to change signature based on recipients automatically with VBA code

8. اضغط على مفتاحي Alt + Q لإغلاق نافذة Microsoft Visual Basic for Applications.

من الآن فصاعدًا، بعد كتابة رسالة بريد إلكتروني والنقر على زر الإرسال، سيتم إدراج التوقيع المقابل تلقائيًا في نهاية نص البريد الإلكتروني بناءً على عنوان البريد الإلكتروني للمستلم في حقل "إلى".


إدراج التاريخ الحالي تلقائيًا كتوقيع عند إرسال البريد الإلكتروني في Outlook:

إذا كنت تريد إدراج الطابع الزمني كتوقيع في نص البريد الإلكتروني أثناء إنشاء/الرد/إعادة توجيه بريد إلكتروني جديد في Outlook الخاص بك، يمكنك تمكين إضافة توقيع التاريخ عند إنشاء جديد، الرد وإعادة الإرسال خيار Kutools for Outlook لتحقيق ذلك. انظر الصورة:
قم بتنزيله وتجربته الآن (30-يوم تجريبي مجاني)

using vba to change signature based on recipients automatically with VBA code


أفضل أدوات إنتاجية أوفيس

أخبار عاجلة: أدوات Kutools لـ Outlook تطلق إصدارًا مجانيًا!

اختبر أدوات Kutools لـ Outlook الجديدة كليًا مع أكثر من100 ميزة مذهلة! انقر لتحميلها الآن!

🤖 Kutools AI : يستخدم تقنية الذكاء الاصطناعي المتقدمة لإدارة البريد الإلكتروني بسهولة، بما في ذلك الرد، التلخيص، التحسين، التوسيع، الترجمة، وإنشاء الرسائل.

📧 أتمتة البريد الإلكتروني: الرد التلقائي (متاح لـ POP و IMAP) / جدولة إرسال البريد / نسخة تلقائية/مخفية عن طريق القواعد عند إرسال البريد / التحويل التلقائي (قاعدة متقدمة) / إضافة التحية تلقائيًا / تقسيم رسائل البريد الإلكتروني متعددة المستلمين تلقائيًا إلى رسائل منفصلة...

📨 إدارة البريد الإلكتروني: استدعاء البريد الإلكتروني / حظر رسائل الاحتيال حسب الموضوع وغيرها / حذف الرسائل المكررة / البحث المتقدم / تنظيم المجلدات...

📁 المرفقات المتقدمة: حفظ دفعة واحدة / فصل دفعة واحدة / ضغط دفعة واحدة / حفظ تلقائي / تفصيل تلقائي / ضغط تلقائي...

🌟 سحر الواجهة: 😊 المزيد من الرموز التعبيرية الجميلة والمميزة / تذكير عند وصول البريد الهام / تصغير Outlook بدل الإغلاق...

👍 ميزات بضغطة واحدة: الرد على الجميع مع المرفقات / الحماية من التصيد الاحتيالي / 🕘 عرض المنطقة الزمنية للمرسل...

👩🏼‍🤝‍👩🏻 جهات الاتصال والتقويم: إضافة جهات الاتصال دفعة واحدة من الرسائل المحددة / تقسيم مجموعة جهات الاتصال إلى مجموعات فردية / إزالة تذكير عيد الميلاد...

استخدم أدوات Kutools بلغتك المفضلة – يدعم الإنجليزية، الإسبانية، الألمانية، الفرنسية، الصينية، وأكثر من40 لغة أخرى!

افتح أدوات Kutools لـ Outlook فوراً بنقرة واحدة. لا تنتظر، حمِّله الآن وحقق كفاءة أعلى!

kutools for outlook features1 kutools for outlook features2