Skip to main content

كيفية حفظ جميع المرفقات من رسائل البريد الإلكتروني المتعددة إلى مجلد في Outlook؟

Author: Siluvia Last Modified: 2025-08-06

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

حفظ جميع المرفقات من رسائل البريد الإلكتروني المتعددة إلى مجلد باستخدام كود VBA
بضع نقرات لحفظ جميع المرفقات من رسائل البريد الإلكتروني المتعددة إلى مجلد باستخدام أداة رائعة


حفظ جميع المرفقات من رسائل البريد الإلكتروني المتعددة إلى مجلد باستخدام كود VBA

يوضح هذا القسم كود VBA خطوة بخطوة لمساعدتك على حفظ جميع المرفقات من رسائل البريد الإلكتروني المتعددة بسرعة في مجلد معين دفعة واحدة. يرجى اتباع الخطوات التالية:

1. أولاً، تحتاج إلى إنشاء مجلد لحفظ المرفقات على جهاز الكمبيوتر الخاص بك.

انتقل إلى مجلد "Documents" وأنشئ مجلدًا باسم "Attachments". انظر لقطة الشاشة:

save attachments by vba 1

2. حدد رسائل البريد الإلكتروني التي تحتوي على المرفقات التي تريد حفظها، ثم اضغط على مفتاحي "Alt" + "F11" لفتح نافذة "Microsoft Visual Basic for Applications".

3. انقر فوق "إدراج" > "وحدة" لفتح نافذة "الوحدة"، ثم قم بنسخ أحد أكواد VBA التالية في النافذة.

كود VBA 1: حفظ المرفقات بشكل جماعي من رسائل البريد الإلكتروني المتعددة (حفظ المرفقات بنفس الاسم مباشرة)

ملاحظة: سيقوم هذا الكود بحفظ المرفقات ذات الأسماء المتطابقة بإضافة الأرقام 1، 2، 3... بعد أسماء الملفات.

Dim GCount As Integer
Dim GFilepath As String
Public Sub SaveAttachments()
'Update 20200821
Dim xMailItem As Outlook.MailItem
Dim xAttachments As Outlook.Attachments
Dim xSelection As Outlook.Selection
Dim i As Long
Dim xAttCount As Long
Dim xFilePath As String, xFolderPath As String, xSaveFiles As String
On Error Resume Next
xFolderPath = CreateObject("WScript.Shell").SpecialFolders(16)
Set xSelection = Outlook.Application.ActiveExplorer.Selection
xFolderPath = xFolderPath & "\Attachments\"
If VBA.Dir(xFolderPath, vbDirectory) = vbNullString Then
    VBA.MkDir xFolderPath
End If
GFilepath = ""
For Each xMailItem In xSelection
    Set xAttachments = xMailItem.Attachments
    xAttCount = xAttachments.Count
    xSaveFiles = ""
    If xAttCount > 0 Then
        For i = xAttCount To 1 Step -1
            GCount = 0
            xFilePath = xFolderPath & xAttachments.Item(i).FileName
            GFilepath = xFilePath
            xFilePath = FileRename(xFilePath)
            If IsEmbeddedAttachment(xAttachments.Item(i)) = False Then
                xAttachments.Item(i).SaveAsFile xFilePath
                If xMailItem.BodyFormat <> olFormatHTML Then
                    xSaveFiles = xSaveFiles & vbCrLf & "<Error! Hyperlink reference not valid.>"
                Else
                    xSaveFiles = xSaveFiles & "<br>" & "<a href='file://" & xFilePath & "'>" & xFilePath & "</a>"
                End If
            End If
        Next i
    End If
Next
Set xAttachments = Nothing
Set xMailItem = Nothing
Set xSelection = Nothing
End Sub

Function FileRename(FilePath As String) As String
Dim xPath As String
Dim xFso As FileSystemObject
On Error Resume Next
Set xFso = CreateObject("Scripting.FileSystemObject")
xPath = FilePath
FileRename = xPath
If xFso.FileExists(xPath) Then
    GCount = GCount + 1
    xPath = xFso.GetParentFolderName(GFilepath) & "\" & xFso.GetBaseName(GFilepath) & " " & GCount & "." + xFso.GetExtensionName(GFilepath)
    FileRename = FileRename(xPath)
End If
xFso = Nothing
End Function

Function IsEmbeddedAttachment(Attach As Attachment)
Dim xItem As MailItem
Dim xCid As String
Dim xID As String
Dim xHtml As String
On Error Resume Next
IsEmbeddedAttachment = False
Set xItem = Attach.Parent
If xItem.BodyFormat <> olFormatHTML Then Exit Function
xCid = ""
xCid = Attach.PropertyAccessor.GetProperty("http://schemas.microsoft.com/mapi/proptag/0x3712001F")
If xCid <> "" Then
    xHtml = xItem.HTMLBody
    xID = "cid:" & xCid
    If InStr(xHtml, xID) > 0 Then
        IsEmbeddedAttachment = True
    End If
End If
End Function

كود VBA 2: حفظ المرفقات بشكل جماعي من رسائل البريد الإلكتروني المتعددة (التحقق من التكرارات)
Public Sub SaveAttachments()
'Update 20200821
Dim xMailItem As Outlook.MailItem
Dim xAttachments As Outlook.Attachments
Dim xSelection As Outlook.Selection
Dim i As Long
Dim xAttCount As Long
Dim xFilePath As String, xFolderPath As String, xSaveFiles As String
Dim xYesNo As Integer
Dim xFlag As Boolean
On Error Resume Next
xFolderPath = CreateObject("WScript.Shell").SpecialFolders(16)
Set xSelection = Outlook.Application.ActiveExplorer.Selection
xFolderPath = xFolderPath & "\Attachments\"
If VBA.Dir(xFolderPath, vbDirectory) = vbNullString Then
    VBA.MkDir xFolderPath
End If
For Each xMailItem In xSelection
    Set xAttachments = xMailItem.Attachments
    xAttCount = xAttachments.Count
    xSaveFiles = ""
    If xAttCount > 0 Then
        For i = xAttCount To 1 Step -1
            xFilePath = xFolderPath & xAttachments.Item(i).FileName
            xFlag = True
            If VBA.Dir(xFilePath, 16) <> Empty Then
                xYesNo = MsgBox("The file is exists, do you want to replace it", vbYesNo + vbInformation, "Kutools for Outlook")
                If xYesNo = vbNo Then xFlag = False
            End If
            If xFlag = True Then
                xAttachments.Item(i).SaveAsFile xFilePath
                If xMailItem.BodyFormat <> olFormatHTML Then
                    xSaveFiles = xSaveFiles & vbCrLf & "<Error! Hyperlink reference not valid.>"
                Else
                    xSaveFiles = xSaveFiles & "<br>" & "<a href='file://" & xFilePath & "'>" & xFilePath & "</a>"
                End If
            End If
        Next i
    End If
Next
Set xAttachments = Nothing
Set xMailItem = Nothing
Set xSelection = Nothing
End Sub

save attachments by vba 2

ملاحظات:

1) إذا كنت ترغب في حفظ جميع المرفقات التي تحمل نفس الاسم في مجلد، يرجى تطبيق "كود VBA 1" أعلاه. قبل تشغيل هذا الكود، يرجى النقر فوق "أدوات" > "المراجع"، ثم وضع علامة اختيار بجانب خانة "Microsoft Scripting Runtime" في مربع الحوار "المراجع - المشروع".
save attachments by vba 3
2) إذا كنت ترغب في التحقق من أسماء المرفقات المكررة، يرجى تطبيق "كود VBA 2". بعد تشغيل الكود، ستظهر نافذة منبثقة لتذكيرك ما إذا كنت تريد استبدال المرفقات المكررة، اختر "نعم" أو "لا" بناءً على احتياجاتك.

5. اضغط على مفتاح "F5" لتشغيل الكود.

ثم يتم حفظ جميع المرفقات في الرسائل المحددة في المجلد الذي أنشأته في الخطوة 1.

ملاحظات: قد تظهر نافذة منبثقة من "Microsoft Outlook"، يرجى النقر فوق زر "السماح" للمتابعة.


حفظ جميع المرفقات من رسائل البريد الإلكتروني المتعددة إلى مجلد باستخدام أداة رائعة

إذا كنت جديدًا في VBA، هنا نوصي بشدة بأداة "حفظ جميع المرفقات" من "Kutools for Outlook" لك. باستخدام هذه الأداة، يمكنك بسرعة حفظ جميع المرفقات من رسائل البريد الإلكتروني المتعددة دفعة واحدة بنقرات قليلة فقط في Outlook.

افتح الباب أمام كفاءة البريد الإلكتروني القصوى مع أدوات Kutools لـ Outlook! استمتع بـ 70 ميزات قوية مجانًا تمامًا، إلى الأبد. قم بتنزيل النسخة المجانية الآن!

1. حدد رسائل البريد الإلكتروني التي تحتوي على المرفقات التي تريد حفظها.

ملاحظة: يمكنك تحديد رسائل بريد إلكتروني متعددة وغير متجاورة عن طريق الضغط باستمرار على مفتاح "Ctrl" واختيارها واحدة تلو الأخرى؛
أو حدد رسائل بريد إلكتروني متعددة ومتجاورة عن طريق الضغط باستمرار على مفتاح "Shift" واختيار أول رسالة وآخر رسالة.

2. انقر فوق "Kutools Plus" > "أدوات المرفقات" > "حفظ الكل". انظر لقطة الشاشة:

3. في مربع حوار "إعدادات الحفظ"، انقر فوق الزر option button لتحديد مجلد لحفظ المرفقات، ثم انقر فوق زر "موافق".

save attachments by kutools for outlook 1

4. انقر فوق "موافق" مرتين في مربعات الحوار المنبثقة التالية. ثم يتم حفظ جميع المرفقات في الرسائل المحددة في المجلد المحدد دفعة واحدة.

ملاحظات:

  • 1. إذا كنت ترغب في حفظ المرفقات في مجلدات مختلفة بناءً على رسائل البريد الإلكتروني، يرجى وضع علامة اختيار بجانب خانة "إنشاء مجلدات فرعية بالأسلوب التالي" واختيار نمط المجلد من القائمة المنسدلة.
  • 2. بالإضافة إلى حفظ جميع المرفقات، يمكنك حفظ المرفقات بناءً على شروط معينة. على سبيل المثال، إذا كنت ترغب فقط في حفظ مرفقات ملفات PDF التي يحتوي اسم الملف فيها على كلمة "Invoice"، يرجى النقر فوق زر "خيارات متقدمة" لتوسيع الشروط، ثم قم بالتكوين كما هو موضح أدناه.
  • 3. إذا كنت ترغب في حفظ المرفقات تلقائيًا عند وصول رسائل البريد الإلكتروني، يمكن لميزة حفظ المرفقات تلقائيًا المساعدة.
  • 4. لفصل المرفقات مباشرة من الرسائل المحددة، يمكن لميزة فصل جميع المرفقات في "Kutools for Outlook" مساعدتك.

مقالات ذات صلة

إدراج المرفقات في نص رسالة البريد الإلكتروني في Outlook
عادةً ما يتم عرض المرفقات في حقل المرفقات في البريد الإلكتروني أثناء كتابته. هنا توفر هذه التعليمات طرقًا لمساعدتك على إدراج المرفقات بسهولة في نص البريد الإلكتروني في Outlook.

تنزيل/حفظ المرفقات تلقائيًا من Outlook إلى مجلد معين
بشكل عام، يمكنك حفظ جميع المرفقات من بريد إلكتروني واحد بالنقر فوق المرفقات > حفظ جميع المرفقات في Outlook. ولكن، إذا كنت بحاجة إلى حفظ جميع المرفقات من جميع الرسائل المستلمة والمستقبلة، هل لديك أي فكرة؟ ستوفر هذه المقالة طريقتين لتنزيل المرفقات تلقائيًا من Outlook إلى مجلد معين.

طباعة جميع المرفقات في رسالة/رسائل بريد إلكتروني متعددة في Outlook
كما تعلم، عند النقر فوق ملف > طباعة في Microsoft Outlook، سيتم طباعة محتوى البريد الإلكتروني مثل العنوان والنص، لكن لن يتم طباعة المرفقات. هنا سنوضح لك كيفية طباعة جميع المرفقات في البريد الإلكتروني المحدد بسهولة في Microsoft Outlook.

البحث عن كلمات داخل المرفقات (المحتوى) في Outlook
عند كتابة كلمة رئيسية في مربع البحث الفوري في Outlook، سيتم البحث عن الكلمة الرئيسية في مواضيع الرسائل، النصوص، المرفقات، وما إلى ذلك. ولكن الآن أحتاج فقط للبحث عن الكلمة الرئيسية في محتوى المرفقات فقط في Outlook، هل لديك أي فكرة؟ توضح هذه المقالة الخطوات التفصيلية للبحث عن كلمات داخل محتوى المرفقات في Outlook بسهولة.

الاحتفاظ بالمرفقات عند الرد في Outlook
عند إعادة توجيه رسالة بريد إلكتروني في Microsoft Outlook، تبقى المرفقات الأصلية في الرسالة المعاد توجيهها. ومع ذلك، عند الرد على رسالة بريد إلكتروني، لن يتم إرفاق المرفقات الأصلية في الرسالة الجديدة. هنا سنقدم بعض الحيل حول الاحتفاظ بالمرفقات الأصلية عند الرد في Microsoft Outlook.


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

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

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

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

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

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

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

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

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

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

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

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

kutools for outlook features1 kutools for outlook features2