Outlook: كيفية استخراج جميع عناوين URL من بريد إلكتروني واحد
إذا كان البريد الإلكتروني يحتوي على مئات عناوين URL التي تحتاج إلى استخراجها إلى ملف نصي، فإن نسخها ولصقها واحدة تلو الأخرى سيكون مهمة شاقة. يقدم هذا البرنامج التعليمي VBAs التي يمكن أن تستخرج بسرعة جميع عناوين URL من بريد إلكتروني.
VBA لاستخراج عناوين URL من بريد إلكتروني واحد إلى ملف نصي
VBA لاستخراج عناوين URL من رسائل بريد إلكتروني متعددة إلى ملف Excel
- عزز إنتاجيتك في البريد الإلكتروني بتقنية الذكاء الاصطناعي، مما يتيح لك الرد بسرعة على رسائل البريد الإلكتروني، وصياغة رسائل جديدة، وترجمة الرسائل، وغير ذلك بكفاءة أكبر.
- أتمتة البريد الإلكتروني باستخدام نسخة تلقائية/مخفية (Auto CC/BCC)، التحويل التلقائي (Auto Forward) حسب القواعد؛ أرسل الرد التلقائي (خارج المكتب) بدون الحاجة إلى خادم Exchange...
- احصل على تنبيهات مثل تنبيه عند الرد على بريد إلكتروني يحتوي على اسمي في نسخة مخفية (BCC Warning) عندما تكون في قائمة BCC، وتذكير عند نسيان المرفقات (Remind When Missing Attachments)...
- تحسين كفاءة البريد الإلكتروني باستخدام الرد (على الكل) مع المرفقات، الإضافة التلقائية للتحية أو التاريخ والوقت إلى التوقيع أو الموضوع، الرد على رسائل متعددة...
- تبسيط البريد الإلكتروني باستخدام استدعاء البريد الإلكتروني، أدوات المرفقات (ضغط جميع المرفقات، الحفظ التلقائي لجميع المرفقات...)، حذف الرسائل المكررة، وتقرير سريع...
VBA لاستخراج عناوين URL من بريد إلكتروني واحد إلى ملف نصي
1. حدد البريد الإلكتروني الذي تريد استخراج عناوين URL منه، واضغط على مفاتيح Alt + F11 لتمكين نافذة Microsoft Visual Basic for Applications.
2. انقر فوق إدراج > وحدة لإنشاء وحدة فارغة جديدة، ثم انسخ والصق الكود أدناه في الوحدة.
VBA: استخراج جميع عناوين URL من بريد إلكتروني واحد إلى ملف نصي.
Sub ExportUrlToTextFileFromEmail()
'UpdatebyExtendoffice20220413
Dim xMail As Outlook.MailItem
Dim xRegExp As RegExp
Dim xMatchCollection As MatchCollection
Dim xMatch As Match
Dim xUrl As String, xSubject As String, xFileName As String
Dim xFs As FileSystemObject
Dim xTextFile As Object
Dim i As Integer
Dim InvalidArr
On Error Resume Next
If Application.ActiveWindow.Class = olInspector Then
Set xMail = ActiveInspector.CurrentItem
ElseIf Application.ActiveWindow.Class = olExplorer Then
Set xMail = ActiveExplorer.Selection.Item(1)
End If
Set xRegExp = New RegExp
With xRegExp
.Pattern = "(https?[:]//([0-9a-z=\?:/\.&-^!#$;_])*)"
.Global = True
.IgnoreCase = True
End With
If xRegExp.test(xMail.Body) Then
InvalidArr = Array("/", "\", "*", ":", Chr(34), "?", "<", ">", "|")
xSubject = xMail.Subject
For i = 0 To UBound(InvalidArr)
xSubject = VBA.Replace(xSubject, InvalidArr(i), "")
Next i
xFileName = "C:\Users\Public\Downloads\" & xSubject & ".txt"
Set xFs = CreateObject("Scripting.FileSystemObject")
Set xTextFile = xFs.CreateTextFile(xFileName, True)
xTextFile.WriteLine ("Export URLs:" & vbCrLf)
Set xMatchCollection = xRegExp.Execute(xMail.Body)
i = 0
For Each xMatch In xMatchCollection
xUrl = xMatch.SubMatches(0)
i = i + 1
xTextFile.WriteLine (i & ". " & xUrl & vbCrLf)
Next
xTextFile.Close
Set xTextFile = Nothing
Set xMatchCollection = Nothing
Set xFs = Nothing
Set xFolderItem = CreateObject("Shell.Application").NameSpace(0).ParseName(xFileName)
xFolderItem.InvokeVerbEx ("open")
Set xFolderItem = Nothing
End If
Set xRegExp = Nothing
End Sub
في هذا الكود، سيتم إنشاء ملف نصي جديد يحمل اسم موضوع البريد الإلكتروني ويوضع في المسار: C:\Users\Public\Downloads، يمكنك تغييره حسب الحاجة.

3. انقر فوق أدوات > المراجع لتمكين مربع الحوار المراجع – المشروع 1، وضع علامة في خانة الاختيار Microsoft VBScript Regular Expressions 5.5. انقر فوق موافق.


4. اضغط على مفتاح F5 أو انقر فوق زر التشغيل لتشغيل الكود، الآن سيظهر ملف نصي وتكون جميع عناوين URL قد تم استخراجها فيه.


ملاحظة: إذا كنت أحد مستخدمي Outlook 2010 وOutlook 365، يرجى أيضًا وضع علامة في خانة اختيار Windows Script Host Object Model في الخطوة 3. ثم انقر فوق موافق.
VBA لاستخراج عناوين URL من رسائل بريد إلكتروني متعددة إلى ملف Excel
إذا كنت ترغب في استخراج عناوين URL من رسائل بريد إلكتروني متعددة محددة إلى ملف Excel، يمكن أن يساعدك الكود VBA أدناه.
1. حدد البريد الإلكتروني الذي تريد استخراج عناوين URL منه، واضغط على مفاتيح Alt + F11 لتمكين نافذة Microsoft Visual Basic for Applications.
2. انقر فوق إدراج > وحدة لإنشاء وحدة فارغة جديدة، ثم انسخ والصق الكود أدناه في الوحدة.
VBA: استخراج جميع عناوين URL من رسائل بريد إلكتروني متعددة إلى ملف Excel
'UpdatebyExtendoffice20220414
Dim xExcel As Excel.Application
Dim xExcelWb As Excel.Workbook
Dim xExcelWs As Excel.Worksheet
Sub ExportAllUrlsToExcelFromMultipleEmails()
Dim xMail As MailItem
Dim xSelection As Selection
Dim xWordDoc As Word.Document
Dim xHyperlink As Word.Hyperlink
On Error Resume Next
Set xSelection = Outlook.Application.ActiveExplorer.Selection
If (xSelection Is Nothing) Then Exit Sub
Set xExcel = CreateObject("Excel.Application")
Set xExcelWb = xExcel.Workbooks.Add
Set xExcelWs = xExcelWb.Sheets(1)
xExcelWb.Activate
With xExcelWs
.Range("A1") = "Subject"
.Range("B1") = "DisplayText"
.Range("C1") = "Link"
End With
With xExcelWs.Range("A1", "C1").Font
.Bold = True
.Size = 12
End With
For Each xMail In xSelection
Set xWordDoc = xMail.GetInspector.WordEditor
If xWordDoc.Hyperlinks.Count > 0 Then
For Each xHyperlink In xWordDoc.Hyperlinks
Call ExportToExcelFile(xMail, xHyperlink)
Next
End If
Next
xExcelWs.Columns("A:C").AutoFit
xExcel.Visible = True
End Sub
Sub ExportToExcelFile(curMail As MailItem, curHyperlink As Word.Hyperlink)
Dim xRow As Integer
xRow = xExcelWs.Range("A" & xExcelWs.Rows.Count).End(xlUp).Row + 1
With xExcelWs
.Cells(xRow, 1) = curMail.Subject
.Cells(xRow, 2) = curHyperlink.TextToDisplay
.Cells(xRow, 3) = curHyperlink.Address
End With
End Sub
في هذا الكود، يتم استخراج جميع الروابط التشعبية والنصوص المعروضة المقابلة لها ومواضيع البريد الإلكتروني.

3. انقر فوق أدوات > المراجع لتمكين مربع الحوار المراجع – المشروع 1، وضع علامة في خانات اختيار Microsoft Excel 16.0 Object Library و Microsoft Word 16.0 Object Library. انقر فوق موافق.


4. ثم ضع المؤشر داخل كود VBA، واضغط على مفتاح F5 أو انقر فوق زر التشغيل لتشغيل الكود، الآن سيظهر مصنف وتكون جميع عناوين URL قد تم استخراجها فيه، ثم يمكنك حفظه في مجلد.

ملاحظة: جميع VBAs أعلاه تستخرج جميع أنواع الروابط التشعبية.
أفضل أدوات تعزيز الإنتاجية في المكتب
خبر عاجل: Kutools لـ Outlook يطلق إصدارًا مجانيًا!
جرب الإصدار الجديد كليًا من Kutools لـ Outlook مع أكثر من100 ميزة مذهلة! انقر لتنزيل الآن!
📧 أتمتة البريد الإلكتروني: الرد التلقائي (متوفر لـ POP وIMAP) / جدولة إرسال البريد الإلكتروني / نسخة تلقائية/مخفية بناءً على القاعدة عند إرسال البريد / التحويل التلقائي (قاعدة متقدمة) / إضافة التحية تلقائيًا / تقسيم تلقائي لرسائل البريد الإلكتروني متعددة المستلمين إلى رسائل فردية ...
📨 إدارة البريد الإلكتروني: استدعاء البريد الإلكتروني / حظر رسائل التصيد بناءً على الموضوعات أو أخرى / حذف البريد الإلكتروني المكرر / البحث المتقدم / تنظيم المجلدات ...
📁 إعدادات المرفقات الاحترافية: حفظ دفعة / فصل دفعة / ضغط دفعة / حفظ تلقائي / تفصيل تلقائي / ضغط تلقائي ...
🌟 جمالية الواجهة: 😊 المزيد من الرموز التعبيرية الجميلة والرائعة / تذكيرك عند وصول رسائل البريد الهامة / تصغير Outlook بدلًا من الإغلاق ...
👍 ميزات بنقرة واحدة: الرد على الجميع مع المرفقات / البريد الإلكتروني المضاد للتصيد / 🕘 عرض المنطقة الزمنية للمرسل ...
👩🏼🤝👩🏻 جهات الاتصال والتقويم: إضافة دفعة لجهات الاتصال من البريد الإلكتروني المحدد / تقسيم مجموعة جهات الاتصال إلى مجموعات فردية / إزالة تذكير عيد الميلاد ...
استخدم Kutools بلغتك المفضلة – يدعم الإنجليزية والإسبانية والألمانية والفرنسية والصينية وأكثر من40 لغة أخرى!
افتح Kutools لـ Outlook فورًا بنقرة واحدة. لا تنتظر، قم بالتنزيل الآن وارتقِ بإنتاجيتك!


🚀 تنزيل بنقرة واحدة — احصل على جميع إضافات Office
موصى به بقوة: Kutools لـ Office (خمسة في واحد)
بنقرة واحدة يمكنك تنزيل خمسة برامج تثبيت مرة واحدة — Kutools لـ Excel وOutlook وWord وPowerPoint وOffice Tab Pro. انقر لتنزيل الآن!
- ✅ سهولة بنقرة واحدة: قم بتنزيل جميع حزم التثبيت الخمسة دفعة واحدة.
- 🚀 جاهز لأي مهمة في Office: ثبّت الإضافات التي تحتاجها وقتما تشاء.
- 🧰 يتضمن: Kutools لـ Excel / Kutools لـ Outlook / Kutools لـ Word / Office Tab Pro / Kutools لـ PowerPoint