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

المحتويات:
- إزالة الكلمة الأولى أو الأخيرة من سلسلة نصية باستخدام الصيغ
- إزالة الكلمة الأولى أو الأخيرة باستخدام «نص إلى أعمدة» (الطريقة المضمنة في Excel)
- إزالة الكلمة الأولى أو الأخيرة باستخدام ماكرو VBA
إزالة الكلمة الأولى أو الأخيرة من سلسلة نصية باستخدام الصيغ
يوفّر استخدام صيغ Excel طريقة مباشرة وخالية من البرمجة لإزالة الكلمة الأولى أو الأخيرة من خلية. هذه الطريقة مناسبة عندما تحتاج إلى نهج ديناميكي يتم تحديثه تلقائيًا إذا تغيّرت النص الأصلي. ومع ذلك، لاحظ أن هذه الصيغ تفترض أن الكلمات مفصولة بمسافات فردية ولا تحتوي على مسافات زائدة في البداية أو النهاية أو مسافات متتالية في النص. يُرجى التأكد من تنسيق المسافات في بياناتك قبل تطبيق هذه الحلول.
إزالة الكلمة الأولى من السلسلة النصية:
1. أدخل هذه الصيغة في خلية فارغة حيث تريد عرض النتيجة (مثل الخلية B2):
=RIGHT(A2,LEN(A2)-FIND(" ",A2)) هنا،A2 هي الخلية التي تحتوي على سلسلة النص الأصلي الخاصة بك. تُحدِّد هذه الصيغة أول مسافةٍ في النص، ثم تزيل الكلمة الأولى مع المسافة التي تليها، وتعيد باقي النص فقط.

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

نصائح:إذا كانت هناك مسافات زائدة في بداية النص (الفراغات الأمامية)، يُوصى باستخدام دالةTRIMلتنظيف البيانات قبل تطبيق الصيغة أعلاه، على سبيل المثال:
=RIGHT(TRIM(A2),LEN(TRIM(A2))-FIND(" ",TRIM(A2))) يضمن ذلك دقة الصيغة حتى لو احتوت بعض الخلايا على مسافات غير منتظمة.
إزالة الكلمة الأخيرة من السلسلة النصية:
لإزالة الكلمة الأخيرة من خلية، استخدم الصيغة التالية. أدخلها في خلية مثلB2:
=LEFT(TRIM(A2),FIND("~",SUBSTITUTE(A2," ","~",LEN(TRIM(A2))-LEN(SUBSTITUTE(TRIM(A2)," ",""))))-1) تعمل هذه الصيغة من خلال تحديد موقع آخر مسافة في النص، ثم استخراج كل ما يسبقها. تأكد من خلو النص من المسافات الزائدة بين الكلمات، أو استخدم دالةTRIM كما ذُكر أعلاه. بعد إدخال الصيغة، اسحب مقبض التعبئة لتطبيقها على عدد الصفوف المطلوب، وسيتم حذف الكلمة الأخيرة من كل خلية في العمود كما هو موضّح:

تذكير بالخطأ:إذا احتوت الخلية على كلمة واحدة فقط دون مسافات، فستُرجع هذه الصيغ إما خطأً أو قيمة فارغة. إذا كانت بياناتك قد تحتوي على حالات كهذه، يمكنك تغليف الصيغة بدالةIFERROR لتجنب الأخطاء، على سبيل المثال:
=IFERROR(RIGHT(A2,LEN(A2)-FIND(" ",A2)),"") إزالة الكلمة الأولى أو الأخيرة باستخدام «نص إلى أعمدة» (الطريقة المضمنة في Excel)
في بعض الحالات—خاصة عند التعامل مع مجموعات بيانات قصيرة أو ثابتة—يمكن أن توفّر ميزة Excel المضمنةنص إلى أعمدةحلاً بصريًا وواضحًا لفصل الكلمات. هذه الطريقة مثالية عندما تريد فصل جميع الكلمات من سلسلة نصية إلى أعمدة بسرعة، ثم إعادة دمجها بشكل انتقائي (مثل استبعاد الكلمة الأولى أو الأخيرة). وعلى الرغم من أنها لا تُحدّث النص تلقائيًا عند تعديل الخلية المصدر—أي أنها ليست ديناميكية كالصيغ—فإنها تظل خيارًا ممتازًا للتنظيفات التي تُنفَّذ لمرة واحدة.
الخطوات:
- 1. حدد العمود الذي يحتوي على بيانات النص التي تريد تقسيمها.
- 2. انتقل إلى علامة التبويببيانات، ثم انقر علىنص إلى أعمدة.
- 3. في المعالج، اخترمحددًا، ثم انقر علىالتالي.
- 4. حدد فقط فاصلالمسافة، ثم انقر علىالتالي.
- 5. اختر الوجهة المخصصة لتقسيم البيانات، ثم انقر علىإنهاء.
- 6.بعد التقسيم، سيتم ملء الأعمدة بالكلمات الفردية من كل خلية. ولإزالة الكلمة الأولى، ما عليك سوى إعادة دمج جميع الأعمدة باستثناء العمود الأول باستخدام الدالةCONCATENATE أوTEXTJOIN (إذا كانت متوفرة). وبالمثل، لإزالة الكلمة الأخيرة، اجمع كل شيء باستثناء العمود الأخير.
يمكنك استخدام صيغة مثل ما يلي (بافتراض أن تقسيم البيانات الخاص بك أصبح الآن في الأعمدة B وC وD لخلية واحدة):
=CONCATENATE(C2," ",D2) إذا كان لديك العديد من الأعمدة التي تريد دمجها، وكان لديك Excel 2016 أو إصدار أحدث، فاستخدم:
=TEXTJOIN(" ",TRUE,C2:E2) تحذيرات:تُعدّ طريقةنص إلى أعمدةعُرضة للكتابة فوق البيانات الموجودة على يمين النطاق المحدَّد إذا لم تكُن حذرًا. لذا، تأكد دائمًا من أن الأعمدة المجاورة فارغة، أو انقل بياناتك أولًا إلى منطقة فارغة لضمان سلامتها. هذه الطريقة مثالية للعمليات اليدوية السريعة، وليست مخصصة للتحديثات الآلية.
تحليل السيناريو المناسب:مثالي للعمليات اليدوية السريعة مع القوائم القصيرة أو عندما تحتاج إلى مراجعة نتائجك بصريًا وتصحيحها على الفور. غير مناسب لمجموعات البيانات الكبيرة أو المتغيرة التي تتطلب أتمتة.
إزالة الكلمة الأولى أو الأخيرة من سلسلة نصية باستخدام ماكرو VBA
للمهام المتقدمة أو المتكررة على نطاق واسع—مثل تنظيف مجموعات بيانات ضخمة، أو أتمتة عمليات الإزالة، أو التعامل مع سيناريوهات معقدة—يُعد ماكرو VBA حلاً فعّالًا للغاية. فهو يمكّنك من إزالة الكلمة الأولى أو الأخيرة من مجموعة كاملة من الخلايا بنقرات قليلة فقط. قبل تشغيل الماكرو، تأكد من خلو بياناتك من المسافات غير الطبيعية أو المسافات غير القابلة للكسر، إذ قد تؤثر هذه العناصر على دقة الفصل.
كيفية استخدام كود VBA هذا:
1. انقر علىالمطوّر > Visual Basic لفتح محررMicrosoft Visual Basic for Applications. في النافذة الجديدة، انقر علىإدراج > وحدة نمطية. ثم الصق أحد الرمزين التاليين في الوحدة النمطية.
إزالة الكلمة الأولى من الخلايا المحددة:
Sub RemoveFirstWord()
Dim WorkRng As Range
Dim Rng As Range
Dim arr As Variant
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Select range to remove first word", xTitleId, WorkRng.Address, Type:=8)
For Each Rng In WorkRng
If InStr(Rng.Value, " ") > 0 Then
arr = Split(Rng.Value, " ")
Rng.Value = Mid(Rng.Value, InStr(Rng.Value, " ") + 1)
End If
Next
End Sub 2. اضغط علىF5 أو انقر علىتشغيللتشغيل الكود. بعد ذلك، سيعرض الماكرو مربع حوار لتختار الخلايا التي تريد معالجتها. انقر علىموافقلتحديث خلاياك فورًا بإزالة الكلمة الأولى من كل خلية محددة.
إزالة الكلمة الأخيرة من الخلايا المحددة:
لإزالة الكلمة الأخيرة من الخلايا المحددة، استخدم كود VBA التالي.
Sub RemoveLastWord()
Dim WorkRng As Range
Dim Rng As Range
Dim arr As Variant
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Select range to remove last word", xTitleId, WorkRng.Address, Type:=8)
For Each Rng In WorkRng
If InStr(Rng.Value, " ") > 0 Then
arr = Split(Rng.Value, " ")
Rng.Value = Left(Rng.Value, Len(Rng.Value) - Len(arr(UBound(arr))) - 1)
End If
Next
End Sub احتياطات:تقوم هذه الماكروهات بإزالة الكلمة الأولى أو الأخيرة فقط—بشرط أن تكون مفصولة بمسافات—من كل خلية ضمن الخلايا المحددة. إذا احتوت الخلية على كلمة واحدة فقط (أي بدون مسافات)، فستبقى دون تغيير. ننصحك دائمًا بالعمل على نسخة احتياطية من بياناتك أو حفظ ملفك قبل تشغيل كود VBA، لأن التغييرات التي يتم إجراؤها غير قابلة للتراجع.
المزايا:يتيح لك VBA إجراء المعالجة بالجملة بسرعة فائقة، وهو فعّال جدًا في أتمتة مهام التنظيف المتكررة، خاصةً عند التعامل مع جداول بيانات ضخمة.
استكشاف الأخطاء وإصلاحها:إذا واجهت رسائل خطأ مثل «خطأ وقت التشغيل»، فتأكد من أن جميع القيم في تحديـدك بتنسيق نصي. فقد تؤدي الخلايا الفارغة أو تلك التي تحتوي على أخطاء إلى تخطي الماكرو أو توقّفه.
بغض النظر عن الطريقة التي تختارها—سواءً كانت صيغًا، أو ميزة «نص إلى أعمدة»، أو VBA—فمن الأفضل دائمًا التحقق من النتائج للتأكد من اتساق البيانات، خاصةً إذا احتوى النص على مسافات زائدة أو علامات ترقيم أو تسلسلات كلمات غير متوقعة. واحرص على عمل نسخة احتياطية من بياناتك الأصلية كلما أمكن، لا سيما عند تطبيق تعديلات جماعية أو استخدام ماكروهات غير مألوفة. وإذا كنت تبحث عن حلول أكثر مرونة وقوة لتنظيف النصوص أو تقسيمها في Excel، فإن Kutools for Excel يوفّر مجموعة شاملة من الأدوات المصممة خصيصًا لمعالجة مختلف تحديات تقسيم النصوص وتنسيقها—بدون الحاجة إلى صيغ أو أكواد معقدة.
تقسيم قيم الخلايا إلى أعمدة وصفوف متعددة باستخدام فاصل معيّن: باستخدام أداةKutools لـ Excelالمميزةتقسيم الخلايا، يمكنك بسرعة تقسيم سلسلة نصية داخل خلية إلى أعمدة أو صفوف متعددة باستخدام المسافة، الفاصلة، سطر جديد، أو أي فاصل آخر تحدده!
Kutools لـ Excel: مع أكثر من 300 أداة إضافية مفيدة لبرنامج Excel، جرّبها مجانًا دون أي قيود لمدة 30 يومًا.نزّل وجرب مجانًا الآن! |
مقال ذو صلة:
كيف يمكنني إزالة أول حرف أو آخر حرف أو أحرف معيّنة من نص في Excel؟
أفضل أدوات الإنتاجية لمكتبتك
عزِّز مهاراتك في 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.
- حزمة شاملة واحدة— إضافات Excel وWord وOutlook وPowerPoint بالإضافة إلى Office Tab Pro
- برنامج تثبيت واحد، ترخيص واحد— الإعداد خلال دقائق (جاهز لـ MSI)
- يعمل بشكل أفضل معًا— إنتاجية ميسَّرة عبر تطبيقات Office
- تجربة مجانية لمدة 30 يومًا بكامل الميزات— بدون تسجيل، بدون بطاقة ائتمان
- أفضل قيمة— وفِّر مقارنةً بشراء الإضافات بشكل منفصل
