KutoolsforOffice — حل واحد، خمس أدوات قوية.تحقيق المزيد بجهد أقل.

كيف تجد أول ظهور أو آخر ظهور أو أي ظهور لحرف معين في Excel؟

المؤلفXiaoyangتاريخ التعديل

في العديد من مهام معالجة البيانات، قد تصادف قوائم من السلاسل النصية تحتوي على أحرف خاصة—مثل الشرطة “-”—ويتطلب الأمر تحديد موضع أول ظهور أو آخر ظهور أو الظهور المعيّن (الظهور رقم n) لهذا الحرف. فعلى سبيل المثال، غالبًا ما يعتمد استخراج المعلومات بناءً على الفواصل، أو تحليل رموز القطع، أو فصل مكونات البيانات على تحديد موقع ظهور حرف معيّن داخل كل سلسلة. ومع ذلك، لا توفّر Excel دالةً مضمنةً مباشرةً لإرجاع موضع أول ظهور أو آخر ظهور أو الظهور رقم n لحرفٍ ما في خلية. ويقدّم هذا المقال عدة تقنيات عملية وحلولًا خطوة بخطوة للعثور بدقة على هذه الظواهر، مما يلبّي احتياجات متنوعة في تحليل البيانات وإعدادها.


العثور على آخر ظهور للحرف باستخدام الصيغ

إذا كنت ترغب في تحديد موضع آخر ظهور لحرف معيّن (مثل “-”) داخل سلسلة نصية، فستجد أن دوال Excel القياسية لا توفّر هذه الميزة بشكل مباشر. لكن بدمج بعض الصيغ الذكية، يمكنك حل هذه المهمة بكفاءة وسلاسة. فيما يلي طريقتان فعالتان تعتمدان على الصيغ، ومثاليتان للتعامل مع رموز المنتجات أو مسارات الملفات أو أي بيانات أخرى تتبع نمطًا ثابتًا من الفواصل. يُرجى ملاحظة أن استخدام صيغ معقدة قد يزيد العبء الحسابي عند تطبيقها على مجموعات بيانات كبيرة.

1. في خلية فارغة (مثلًا، C2)، أدخل أو الصق إحدى الصيغ التالية:

=SEARCH("^^",SUBSTITUTE(A2,"-","^^",LEN(A2)-LEN(SUBSTITUTE(A2,"-",""))))
=LOOKUP(2,1/(MID(A2,ROW(INDIRECT("1:"&LEN(A2))),1)="-"),ROW(INDIRECT("1:"&LEN(A2))))

تم تصميم كلتا الصيغتين لإيجاد موضع (كرقم) آخر ظهور للحرف “-” في الخلية المرجعية (A2). تعتمد الصيغة الأولى على دالتيSEARCH وSUBSTITUTE لتحديد الموضع، وذلك باستبدال آخر ظهور للحرف “-” برمز فريد ثم البحث عنه. أما الصيغة الثانية، فتستخدم دالةLOOKUP بالاقتران مع دالتيMID وROW للوصول إلى آخر ظهور للحرف “-”. يمكنك اختيار أي من الطريقتين بناءً على خبرتك أو حجم بياناتك. وقد تكون طريقةLOOKUP أكثر سهولة في التكيّف مع إصدارات Excel الحديثة التي تدعم المصفوفات.

العثور على آخر تكرار للحرف باستخدام صيغة

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

اسحب واملأ الصيغة في الخلايا الأخرى

ملاحظة:في هذه الأمثلة، تشيرA2 إلى الخلية التي تحتوي على بياناتك، و“-” هو الحرف المستهدف. يمكنك استبدال “-” بأي حرف آخر تريد البحث عنه. إذا كانت خليتك فارغة أو لم يظهر الحرف في النص، فقد تُرجع الصيغة خطأً. وبالنسبة للإدخالات النصية التي تحتوي على فواصل متكررة أو رموز خاصة، تأكد من التحقق بدقة من وجود أحرف مخفية أو غير قابلة للطباعة قد تؤثر على نتائجك.


العثور على آخر ظهور للحرف باستخدام دالة معرّفة من قِبل المستخدم (UDF)

طريقة مرنة أخرى هي استخدام دالة معرّفة من قِبل المستخدم (UDF) في وحدة VBA، والتي توفّر تحكمًا أكبر وسهولةً أفضل في إعادة الاستخدام—خاصةً إذا كنت بحاجةٍ متكررةٍ إلى العثور على آخر ظهور لأي حرف لأغراض تحليل متنوعة. وهذه الطريقة مثالية إذا رغبتَ في واجهة صيغة موجزة ()=lastpositionofchar(cell, character)) تعمل بنفس سلاسة دوال Excel المضمنة. ومع ذلك، تذكّر أنه يجب تمكين الماكرو لكي تعمل حلول VBA، وعليك دائمًا حفظ ملفك كملف يدعم الماكرو (*.xlsm) للحفاظ على الدالة المخصصة.

1. افتح ورقة العمل التي ترغب في إضافة هذه الدالة إليها.

2. اضغط معًا على مفاتيحALT + F11 لفتح محررMicrosoft Visual Basic for Applications.

3. في محرر VBA، انقر فوقInsert > Module لإنشاء وحدة جديدة. بعد ذلك، انقل ولصق الكود التالي في نافذة الوحدة.

كود VBA: العثور على آخر ظهور للحرف

Function LastpositionOfChar(strVal As String, strChar As String) As Long
LastpositionOfChar = InStrRev(strVal, strChar)
End Function

استكشاف الأخطاء وإصلاحها:إذا لم تُرجع الدالة نتيجة، فتأكد من أن الماكرو مفعّل وأنك أدخلت مرجع الخلية والحرف الصحيحين في الصيغة. وإذا كنت بحاجة إلى العثور على آخر ظهور لحرف مختلف، فما عليك سوى تعديل المعامل وفقًا لذلك.

4. احفظ وأغلق نافذة الكود، ثم عُد إلى ورقة العمل الخاصة بك. أدخل الصيغة التالية في خلية فارغة (مثل الخلية B2):=lastpositionofchar(A2,"-"). استبدلA2 بالخلية المناسبة و“-” بالحرف المستهدف حسب الحاجة.

تطبيق صيغة للحصول على آخر تكرار للحرف

5. اسحب مقبض التعبئة لأسفل لتطبيق الصيغة على الخلايا الإضافية حسب الحاجة، وستُرجع بذلك آخر موضع للحرف المحدد في كل سلسلة نصية، كما هو موضح أدناه.

اسحب واملأ الصيغة في الخلايا الأخرى

ملاحظة: المعامل الأول ()A2) هو خلية المصدر التي تحتوي على سلسلتك النصية، والثاني (“-”) هو الحرف المستهدف. يمكنك تعديل هذين المعاملين حسب احتياجاتك. إذا لم يتم العثور على تطابق، فقد تُرجع الدالة0. احفظ عملك دائمًا قبل تشغيل أو تعديل كود VBA. وإذا ظهر خطأ، فتأكد من عدم وجود علامات اقتباس غير صحيحة أو خلايا مرجعية غير مضبوطة.


العثور على أول ظهور أو الظهور للحرف باستخدام صيغة

إذا كانت مهمتك تتمثل في العثور ليس فقط على آخر ظهور لحرف في سلسلة نصية، بل أيضًا على أول ظهور أو ثاني ظهور أو أي ظهور معيّن، يمكنك استخدام تركيب صيغة مختلف. وغالبًا ما يُطلب ذلك عند تحليل الرموز الهرمية، أو استخراج أجزاء من المعرّفات المنظمة، أو تحديد الرموز المتكررة في إدخالات البيانات.

1. للحصول على الموضع رقم n لحرف معيّن، أدخل أو الصق الصيغة التالية في خلية فارغة (مثل C2):

=FIND(CHAR(160),SUBSTITUTE(A2,"-",CHAR(160),2))

في هذه الصيغة،A2 هي الخلية التي يتم البحث فيها، و"-" هو الحرف الذي سيتم البحث عنه، و2 يشير إلى رقم الظهور المطلوب للحرف (مثل 2 للظهور الثاني). يمكنك تعديل رقم الظهور ليتناسب مع متطلبات بياناتك.

الحصول على التكرار الـ nth للحرف باستخدام صيغة

2. اضغطEnter. لتطبيق الصيغة على المزيد من الصفوف، اسحب مقبض التعبئة لأسفل حتى النطاق المطلوب. ستحصل بذلك على موضع التكرار الثاني لـ “-” في كل سلسلة نصية، على سبيل المثال. إذا كان رقم التكرار المحدد أكبر من العدد الإجمالي لتلك الحرف في السلسلة، فستُرجع الصيغة خطأً. في هذه الحالة، تحقق من بياناتك النصية أو معامل التكرار.

اسحب واملأ الصيغة في الخلايا الأخرى

ملاحظة:الرقم2 في الصيغة هو رقم التكرار الذي سيتم البحث عنه. غيّر هذا الرقم لتحديد موضع أول أو ثالث أو رابع أو أي تكرار آخر للحرف المحدد. إذا لم يُوجد الحرف بالعدد المطلوب من المرات، فسيظهر خطأ #VALUE!؛ ويمكنك التعامل مع هذا الخطأ باستخدامIFERROR() للحصول على نتائج أنظف.


العثور على أول أو الظهور لحرف معيّن باستخدام ميزة سهلة

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

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

بعد تثبيتKutools لـ Excel، اتبع هذه الخطوات للحصول على نتائج سريعة:

افترض أنك تريد الحصول على موضع التكرار الثاني لحرف الواصلة “-” في مجموعة من السلاسل النصية:

1. انقر على الخلية التي ترغب في ظهور الناتج فيها.

2. انقرKutools > مساعد الصيغة > مساعد الصيغةفي الشريط، كما هو موضح أدناه:

انقر على ميزة مساعد الصيغة من Kutools

3. في مربع الحوارمساعد الصيغة:

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

تعيين الخيارات في مربع حوار مساعد الصيغ

4. انقرموافق. بعد أن تُرجع الصيغة الناتج، يمكنك سحب مقبض التعبئة لأسفل لتطبيقها على الصفوف الأخرى حسب الحاجة. تساعدك هذه الطريقة على تجنّب خطر حدوث أخطاء في الصيغ الناتجة عن الإدخال اليدوي.

الحصول على النتيجة بواسطة Kutools

حمّل Kutools لـ Excel وجربه مجانًا الآن!

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


صيغة بديلة لإصدارات Excel الحديثة (التي تدعم المصفوفات الديناميكية)

في إصدارات Excel الأحدث (Excel 365 وExcel 2021 والإصدارات الأحدث) التي تدعم المصفوفات الديناميكية، يمكنك الاستفادة من دوال مثلSEQUENCE وFILTER لإرجاع جميع مواضع الحرف دفعة واحدة، مما يسهّل عليك تحديد الظهور أو حتى عرض جميع التكرارات في نطاق منفصل للمعالجة الإضافية.

1. أدخل الصيغة التالية في خلية فارغة (مثل B2) للحصول على جميع مواضع الحرف “-” في الخلية A2:

=FILTER(SEQUENCE(LEN(A2)), MID(A2,SEQUENCE(LEN(A2)),1)="-")

بعد الضغط علىEnter، ستقوم الصيغة تلقائيًا بملء مواضع كل تكرار لـ “-” عبر الخلايا المجاورة. إذا كنت تريد إرجاع الظهور فقط، يمكنك استخدام:

=INDEX(FILTER(SEQUENCE(LEN(A2)), MID(A2,SEQUENCE(LEN(A2)),1)="-"),2)

استبدل2 برقم التكرار المطلوب. هذه الطريقة فعّالة جدًّا مع المصفوفات أو القوائم ذات الأطوال المتغيرة، لكنها تتطلب إصدارًا من Excel يدعم هذه الدوال.

تلميح:إذا ظهر خطأ #CALC! أو أي خطأ مشابه، فتأكد أولًا من أن إصدار Excel الذي تستخدمه يدعم المصفوفات الديناميكية، وأن الخلايا المرجعية تحتوي على بيانات نصية.


كود VBA للعثور على موضع الظهور لحرف ما

إذا كنت بحاجة إلى حلٍّ لا يقتصر على تحديد آخر موضع فحسب، بل يمتد ليشمل أي ظهور لحرف معين، فإن VBA هنا أيضًا في خدمتك. يمكن تخصيص الماكرو التالي ليتوافق مع احتياجات تحليلية متنوعة، وهو يوفّر وقتك بشكل ملحوظ عند استخدامه مرارًا عبر ملفات عمل متعددة.

1. انتقل إلى علامة التبويبالمطوّر > Visual Basic، ثم اخترإدراج > وحدة نمطية. الصق الكود أدناه في نافذة الوحدة النمطية:

Function NthPositionOfChar(cell As Range, ch As String, nth As Integer) As Long
    Dim s As String
    Dim i As Long, count As Long
    On Error Resume Next
    xTitleId = "KutoolsforExcel"
    s = cell.Value
    count = 0
    For i = 1 To Len(s)
        If Mid(s, i, 1) = ch Then
            count = count + 1
            If count = nth Then
                NthPositionOfChar = i
                Exit Function
            End If
        End If
    Next i
    NthPositionOfChar = 0
End Function

2. أغلق المحرر. استخدم الصيغة=NthPositionOfChar(A2,"-",2) (استبدل الوسائط حسب الحاجة) في ورقة العمل الخاصة بك لإرجاع موضع التكرار الثاني لـ “-” في الخلية A2. يُرجى ملاحظة أنه إذا لم يكن هذا التكرار موجودًا، فستُرجع الدالة القيمة 0.

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


عند العمل مع السلاسل النصية ومواضع تكرار الأحرف، تأكد دائمًا من خلوّها من الأحرف المخفية أو غير القابلة للطباعة—مثل المسافات الزائدة، علامات انتهاء السطر، أو رموز Unicode الخاصة—فهي قد تُغيّر نتائج الصيغ دون أن تلاحظ! كما يُنصح بالتحقق من اتساق فواصل البيانات قبل تطبيق أي صيغ أو ماكروهات، خاصةً إذا كانت تستخدم تنسيقات مختلفة. وفي حال ظهور أخطاء، راجع معلمات الإدخال ومراجع الصيغ بدقة، وتأكد من توافق نوع البيانات (نص/رقم) مع الدالة التي تستخدمها.

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

مقالات ذات صلة إضافية:

  • استخراج الأحرف من اليمين إلى اليسار في خلية
  • سيتناول هذا المقال كيفية سحب أو استخراج الأحرف من الجهة اليمنى في خلية حتى الوصول إلى أول مسافة، للحصول على النتيجة المرجوة في ورقة عمل Excel. ويقدّم المقال صيغةً مفيدةً تُنجز هذه المهمة بسرعة وسهولة.

  • إزالة أول X أحرف أو آخرها أو أحرف في مواضع معيّنة
  • سيتناول هذا المقال كيفية سحب أو استخراج الأحرف من الجهة اليمنى في خلية حتى الوصول إلى المسافة الأولى، للحصول على النتيجة المرجوة في ورقة عمل Excel. وتقدّم صيغة مفيدة مذكورة في هذا المقال حلاً سريعًا وسهلاً لهذه المهمة.
  • العثور على موضع أول حرف صغير
  • إذا كانت لديك قائمة من السلاسل النصية تحتوي على أحرف كبيرة وصغيرة معًا، وترغب في تحديد موضع أول حرف صغير فيها بورقة عمل Excel بسرعة دون عد الأحرف يدويًّا واحدًا تلو الآخر، فكيف يمكنك تحقيق ذلك؟

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

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

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


يجلب Office Tab واجهة ذات علامات تبويب إلى Office، ويجعل عملك أسهل بكثير

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

جميع الإضافات من Kutools في برنامج تثبيت واحد!

Kutools for Office حزمةٌ تحتوي على إضافاتٍ مخصصة لتطبيقات Excel وWord وOutlook وPowerPoint، إلى جانب Office Tab Pro، مما يجعلها الخيار المثالي للفِرق التي تعمل عبر تطبيقات Office.

ExcelWordOutlookTabsPowerPoint
  • حزمة شاملة واحدة— إضافات Excel وWord وOutlook وPowerPoint بالإضافة إلى Office Tab Pro
  • برنامج تثبيت واحد، ترخيص واحد— الإعداد خلال دقائق (جاهز لـ MSI)
  • يعمل بشكل أفضل معًا— إنتاجية ميسَّرة عبر تطبيقات Office
  • تجربة مجانية لمدة 30 يومًا بكامل الميزات— بدون تسجيل، بدون بطاقة ائتمان
  • أفضل قيمة— وفِّر مقارنةً بشراء الإضافات بشكل منفصل