Skip to main content

استخراج عناوين البريد الإلكتروني بسرعة من سلسلة نصية في Excel - دليل كامل

Author: Xiaoyang Last Modified: 2025-05-30

عند التعامل مع بيانات مستوردة أو سلاسل نصية مختلطة في Excel، قد تجد نفسك بحاجة إلى استخراج عناوين البريد الإلكتروني بسرعة ودقة. سواء كنت تعمل مع قائمة تحتوي على عناوين بريد إلكتروني مختلطة مع نصوص أخرى أو تحتاج إلى استخراج رسائل بريد إلكتروني من مجموعة بيانات كبيرة، هناك عدة طرق فعالة للقيام بهذه المهمة. سيأخذك هذا الدليل عبر تقنيات مختلفة لاستخراج عناوين البريد الإلكتروني من السلاسل النصية، بما في ذلك استخدام Flash Fill، Kutools لـ Excel، الصيغ، الدوال المعرفة من قبل المستخدم، ورمز VBA. كل طريقة توفر مزايا مختلفة حسب احتياجاتك وتعقيد البيانات.

A screenshot of mixed text strings in Excel for extracting email addresses

استخراج عنوان البريد الإلكتروني من سلسلة نصية باستخدام Flash Fill

توفر ميزة Flash Fill في Excel طريقة سريعة وفعالة لتنسيق أو استخراج البيانات تلقائيًا بناءً على الأنماط التي تحددها. في هذا القسم، سنوضح لك كيفية استخدام Flash Fill لاستخراج عناوين البريد الإلكتروني من عمود يحتوي على بيانات مختلطة. هذه الطريقة مفيدة بشكل خاص عند التعامل مع قوائم تحتوي على أنواع مختلفة من النصوص وتحتاج فقط إلى استخراج عناوين البريد الإلكتروني.

  1. انقر فوق الخلية الأولى في العمود المجاور (مثل B2) حيث تريد أن تظهر عناوين البريد الإلكتروني.
  2. اكتب يدويًا عنوان البريد الإلكتروني من الصف المقابل في العمود A، ثم اضغط على Enter.
    على سبيل المثال، إذا كانت الخلية A2 تحتوي على "ana varela@gmail.com"، اكتب " ana varela@gmail.com " في الخلية B2.
    A screenshot showing the manual entry of an email address in Excel before using Flash Fill
  3. ابقَ في الخلية B3 واضغط على "Ctrl + E" لتفعيل Flash Fill.
    سيقوم Excel تلقائيًا بتعبئة باقي العمود B بالعناوين المستخرجة من البريد الإلكتروني.
    A GIF of email addresses extracted using Flash Fill in Excel
ملاحظات:
  • Flash Fill متاح في Excel 2013 والإصدارات الأحدث. إذا كنت تستخدم Excel 2010 أو إصدارًا أقدم، فقد لا تكون هذه الميزة متاحة.
  • تأكد من أن الخلايا التي تقوم بتطبيق Flash Fill عليها تم تنسيقها كـ 'نص' لتجنب مشكلات التنسيق غير المرغوب فيها.

نقرة واحدة لاستخراج عناوين البريد الإلكتروني دفعة واحدة من سلسلة نصية باستخدام Kutools

عندما يتعلق الأمر باستخراج عناوين البريد الإلكتروني من مجموعة بيانات، فإن ميزة "استخراج عناوين البريد الإلكتروني" في Kutools لـ Excel تقدم بديلاً قويًا لميزة Flash Fill في Excel. بينما توفر Flash Fill نهجًا يدويًا للتعرف على الأنماط، يقوم Kutools لـ Excel بأتمتة العملية بنقرة واحدة فقط، مما يجعله مثاليًا للتعامل مع كميات كبيرة من البيانات بكفاءة. لا يُبسط هذا الأداة عملية الاستخراج فحسب، بل يضمن أيضًا الدقة والسرعة، خاصة عند التعامل مع مجموعات بيانات معقدة أو غير متسقة.

Kutools لـ Excel يقدم أكثر من 300 ميزة متقدمة لتبسيط المهام المعقدة، مما يعزز الإبداع والكفاءة. بالتكامل مع قدرات الذكاء الاصطناعي، يقوم Kutools بأتمتة المهام بدقة، مما يجعل إدارة البيانات أمرًا سهلاً للغاية. معلومات تفصيلية عن Kutools لـ Excel... نسخة تجريبية مجانية...

بعد تنزيل وتثبيت Kutools لـ Excel، يرجى القيام بما يلي:

  1. حدد نطاق الخلايا الذي تريد استخراج عناوين البريد الإلكتروني منه. ثم انتقل إلى تحديد "Kutools" > "النص" > "استخراج عناوين البريد الإلكتروني".
  2. في مربع الحوار المنبثق "استخراج عناوين البريد الإلكتروني"، حدد خلية لإخراج عنوان البريد الإلكتروني وانقر على موافق.
    A screenshot of the Kutools Extract Email Address feature in action
النتيجة

ثم يتم استخراج جميع عناوين البريد الإلكتروني الموجودة في كل خلية من النطاق المحدد على الفور.

A screenshot showing the results of email extraction using Kutools

Kutools لـ Excel - قم بتعزيز Excel بأكثر من 300 أدوات أساسية. استمتع بميزات ذكاء اصطناعي مجانية بشكل دائم! احصل عليه الآن


استخراج عنوان البريد الإلكتروني من سلسلة نصية باستخدام صيغة

هنا أقدم لكم صيغة طويلة لاستخراج عناوين البريد الإلكتروني فقط من النص في Excel. يرجى القيام بما يلي:

1. في الخلية المجاورة B1، أدخل الصيغة التالية:

=TRIM(RIGHT(SUBSTITUTE(LEFT(A1,FIND (" ",A1&" ",FIND("@",A1))-1)," ", REPT(" ",LEN(A1))),LEN(A1)))

A screenshot showing a formula for extracting email addresses in Excel

2. ثم اضغط على مفتاح Enter، وبعد ذلك حدد الخلية B1 واسحب مقبض التعبئة إلى النطاق الذي تريد أن يحتوي على هذه الصيغة. وسيتم استخراج عناوين البريد الإلكتروني في النطاق من السلسلة النصية. انظر لقطة الشاشة:

A screenshot of email addresses extracted using a formula in Excel

ملاحظات:

1. سيتم استخراج علامات الترقيم بعد عنوان البريد الإلكتروني أيضًا.

2. إذا لم تحتوي الخلايا على عناوين البريد الإلكتروني، ستعرض الصيغة قيم خطأ.

3. إذا كان هناك أكثر من عنوان بريد إلكتروني في خلية واحدة، ستستخرج الصيغة العنوان الأول فقط.


استخراج عنوان البريد الإلكتروني من سلسلة نصية باستخدام دالة معرفة من قبل المستخدم

بالإضافة إلى الصيغة أعلاه، يمكن أن تساعدك دالة معرفة من قبل المستخدم أيضًا في الحصول على عنوان البريد الإلكتروني من السلسلة النصية.

1. اضغط مع الاستمرار على مفاتيح "ALT + F11"، ويفتح نافذة "Microsoft Visual Basic for Applications".

2. انقر على "إدراج" > "وحدة"، والصق ما يلي من الكود في نافذة الوحدة.

Function ExtractEmailFun(extractStr As String) As String
'Update by extendoffice
Dim CharList As String
On Error Resume Next
CheckStr = "[A-Za-z0-9._-]"
OutStr = ""
Index = 1
Do While True
    Index1 = VBA.InStr(Index, extractStr, "@")
    getStr = ""
    If Index1 > 0 Then
        For p = Index1 - 1 To 1 Step -1
            If Mid(extractStr, p, 1) Like CheckStr Then
                getStr = Mid(extractStr, p, 1) & getStr
            Else
                Exit For
            End If
        Next
        getStr = getStr & "@"
        For p = Index1 + 1 To Len(extractStr)
            If Mid(extractStr, p, 1) Like CheckStr Then
                getStr = getStr & Mid(extractStr, p, 1)
            Else
                Exit For
            End If
        Next
        Index = Index1 + 1
        If OutStr = "" Then
            OutStr = getStr
        Else
            OutStr = OutStr & Chr(10) & getStr
        End If
    Else
        Exit Do
    End If
Loop
ExtractEmailFun = OutStr
End Function

3. ثم احفظ الكود وأدخل الصيغة =ExtractEmailFun(A1) في خلية فارغة مجاورة، انظر لقطة الشاشة:

A screenshot showing a user-defined function for extracting email addresses in Excel

4. ثم اضغط على مفتاح Enter، وحدد الخلية B1 واسحب مقبض التعبئة إلى النطاق الذي تحتاج فيه إلى الصيغة. وسيتم استخراج جميع عناوين البريد الإلكتروني من النص الموجود في الخلية. انظر لقطة الشاشة:

A screenshot of email addresses extracted using a user-defined function in Excel

ملاحظات:

1. إذا لم تحتوي الخلايا على عناوين البريد الإلكتروني، ستظهر خلايا فارغة.

2. إذا كان هناك أكثر من عنوان بريد إلكتروني في خلية واحدة، سيتم استخراج جميع الرسائل الإلكترونية.


استخراج عنوان البريد الإلكتروني من سلسلة نصية باستخدام كود VBA

إذا شعرت أن الصيغ أعلاه مرهقة، يمكن أن يساعدك الكود التالي من VBA في استخراج عناوين البريد الإلكتروني بسرعة.

1. اضغط مع الاستمرار على مفاتيح "ALT + F11"، ويفتح نافذة "Microsoft Visual Basic for Applications".

2. انقر على "إدراج" > "وحدة"، والصق ما يلي من الكود في نافذة الوحدة.

VBA: استخراج عناوين البريد الإلكتروني من سلسلة نصية

Sub ExtractEmail()
'Update 20130829
Dim WorkRng As Range
Dim arr As Variant
Dim CharList As String
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
arr = WorkRng.Value
CheckStr = "[A-Za-z0-9._-]"
For i = 1 To UBound(arr, 1)
    For j = 1 To UBound(arr, 2)
        extractStr = arr(i, j)
        outStr = ""
        Index = 1
        Do While True
            Index1 = VBA.InStr(Index, extractStr, "@")
            getStr = ""
            If Index1 > 0 Then
                For p = Index1 - 1 To 1 Step -1
                    If Mid(extractStr, p, 1) Like CheckStr Then
                        getStr = Mid(extractStr, p, 1) & getStr
                    Else
                        Exit For
                    End If
                Next
                getStr = getStr & "@"
                For p = Index1 + 1 To Len(extractStr)
                    If Mid(extractStr, p, 1) Like CheckStr Then
                        getStr = getStr & Mid(extractStr, p, 1)
                    Else
                        Exit For
                    End If
                Next
                Index = Index1 + 1
                If outStr = "" Then
                    outStr = getStr
                Else
                    outStr = outStr & Chr(10) & getStr
                End If
            Else
                Exit Do
            End If
        Loop
        arr(i, j) = outStr
    Next
Next
WorkRng.Value = arr
End Sub

3. ثم اضغط على مفتاح F5 لتشغيل هذا الكود، ويجب عليك تحديد نطاق تريد استخدام VBA عليه في مربع الحوار المنبثق، انظر لقطة الشاشة:

A screenshot showing the range selection for VBA email extraction in Excel

4. ثم انقر على موافق، وسيتم استخراج عناوين البريد الإلكتروني من السلاسل النصية المحددة. انظر لقطات الشاشة:

A screenshot showing the original text before using VBA for email extraction Arrow A screenshot of the results after extracting emails with VBA code in Excel

ملاحظات:

1. إذا لم تحتوي الخلايا على عناوين البريد الإلكتروني، ستظهر خلايا فارغة.

2. سيتم استخراج جميع الرسائل الإلكترونية إذا كان هناك أكثر من عنوان بريد إلكتروني في خلية واحدة.

3. سيتم الكتابة فوق الرسائل الإلكترونية المستخرجة على البيانات الأصلية، لذلك يُوصى بعمل نسخة احتياطية من بياناتك أولاً.


arrow blue right bubble عرض توضيحي: استخراج عنوان البريد الإلكتروني من سلسلة نصية باستخدام Kutools لـ Excel

 
Kutools لـ Excel: أكثر من 300 أدوات عملية في متناول يدك! استمتع بميزات ذكاء اصطناعي مجانية بشكل دائم! قم بالتنزيل الآن!

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

كيفية استخراج المجالات من عناوين البريد الإلكتروني المتعددة في Excel؟

أفضل أدوات الإنتاجية لمكتب العمل

🤖 Kutools AI Aide: أحدث ثورة في تحليل البيانات من خلال: التنفيذ الذكي |توليد الشيفرة |إنشاء الصيغ المخصصة |تحليل البيانات وتوليد الرسوم البيانية |استدعاء الوظائف المحسنة
الميزات الشائعة: البحث، تمييز أو وضع علامة على المكررات | حذف الصفوف الفارغة | دمج الأعمدة أو العنوان دون فقدان البيانات | تقريب ...
بحث متقدم: بحث V متعدد المعايير | بحث V متعدد القيم | بحث في عدة ورقات | مطابقة غامضة ....
قائمة منسدلة متقدمة: إنشاء قائمة منسدلة بسرعة | قائمة منسدلة تابعة | قائمة منسدلة متعددة الاختيار ....
إدارة الأعمدة: إضافة عدد محدد من الأعمدة | نقل الأعمدة | تبديل حالة إظهار الأعمدة المخفية | مقارنة النطاق والأعمدة ...
ميزات مميزة: التركيز على الشبكة | عرض التصميم | شريط الصيغ المحسن | أدوات المصنف & أدوات الورقة العمل | مكتبة النص التلقائي (Auto Text) | منتقي التاريخ | دمج البيانات | تشفير/فك تشفير الخلايا | إرسال البريد الإلكتروني حسب القائمة | مرشح متقدم | تصفية خاصة (تصفية الخلايا التي تحتوي على خط عريض/مائل/يتوسطه خط...) ...
أفضل15 مجموعة أدوات:12 أداة نصية (إضافة نص، حذف الأحرف المحددة، ...) | أكثر من50 نوع من الرسوم البيانية (مخطط جانت، ...) | أكثر من40 صيغة عملية (حساب العمر بناءً على تاريخ الميلاد، ...) |19 أداة إدراج (إدراج رمز الاستجابة السريعة، إدراج صورة من المسار، ...) |12 أداة تحويل (تحويل إلى كلمات، تحويل العملة، ...) |7 أدوات دمج وتقسيم (دمج متقدم للصفوف، تقسيم الخلايا، ...) | ... والمزيد

عزز مهاراتك في Excel مع Kutools لـ Excel، واختبر الكفاءة كما لم يحدث من قبل. Kutools لـ Excel يقدم أكثر من300 ميزة متقدمة لزيادة الإنتاجية وتوفير وقت الحفظ. انقر هنا للحصول على الميزة التي تحتاجها أكثر...


Office Tab يقدم واجهة التبويب لـ Office، ويجعل عملك أسهل بكثير

  • تمكين تحرير وقراءة المستندات عبر التبويبات في Word وExcel وPowerPoint.
  • افتح وأنشئ عدة مستندات في تبويبات جديدة ضمن نفس النافذة، بدلاً من فتحها في نوافذ منفصلة.
  • يزيد إنتاجيتك بنسبة50%، ويقلل مئات النقرات بالماوس يومياً!