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

كيف تحذف الصفوف التي لا تحتوي على نص معين في Excel؟

المؤلفصنتاريخ التعديل

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

حذف الصفوف التي لا تحتوي على نص معين باستخدام عامل التصفية (Filter)

حذف الصفوف التي لا تحتوي على نص معين باستخدام VBA

حذف الصفوف التي لا تحتوي على نص معين باستخدام Kutools لـ Excel

حذف الصفوف التي لا تحتوي على نص معين باستخدام صيغة Excel (عمود مساعد)


سهم أزرق فقاعة جهة اليمين حذف الصفوف التي لا تحتوي على نص معين باستخدام عامل التصفية (Filter)

تُعد خاصية التصفية (Filter) في Excel وسيلةً مباشرة وسهلة لتحديد الصفوف التي لا تحتوي على نص معيّن وإخفائها مؤقتًا. وهي مثاليةٌ لمن يفضلون أسلوبًا مرئيًّا سريعًا، كما تناسب جداول البيانات الصغيرة والمتوسطة الحجم. ومع ذلك، قد تفقد فعاليتها مع مجموعات البيانات الضخمة جدًّا أو عندما يكون النص المستهدف متغيرًا بشكل كبير.

1. حدد العمود الذي يحتوي على النص الذي تريد التصفية به، ثم انقر علىبيانات > تصفيةلتطبيق عوامل التصفية على جدولك. انظر لقطة الشاشة:

doc-delete-rows-not-contain-1
doc-arrow
doc-delete-rows-not-contain-2

2. انقر على زر التصفية (السهم المتجه للأسفل) في رأس العمود ذي الصلة لفتح قائمة التصفية المنسدلة. قم بإلغاء تحديد جميع الخيارات ما عدا النص الذي تريد الاحتفاظ به؛ أي أن الصفوفالتي تحتوي علىالنص المحدد فقط ستظل ظاهرة. إذا ظهر نصك كقيمة جزئية أو جزءًا من نص، فاستخدم خيار «تصفية النص» > «يحتوي على...» لمزيد من المرونة. انظر لقطة الشاشة:

doc-delete-rows-not-contain-3

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

doc-delete-rows-not-contain-4

4. حدد جميع الصفوف الظاهرة باستثناء الرأس (يمكنك النقر على أول صف، ثم الضغط باستمرار على Shift والنقر على الصف الأخير)، ثم انقر بزر الماوس الأيمن واخترحذف صفمن القائمة السياقية. يؤدي هذا الإجراء إلى إزالة الصفوف الظاهرة (المضمنة بعد التصفية). بعد الحذف، قد تبقى الصفوف المخفاة (التي لا)تContainتحتوي على النص المحدد) مخفية.

doc-delete-rows-not-contain-5

5. لإكمال العملية، انقر علىبيانات > تصفيةمرة أخرى لإزالة عامل التصفية، وسترى أن الصفوف التي لا تحتوي على النص المحدد هي فقط التي بقيت في ورقة العمل الخاصة بك. انظر لقطة الشاشة:

doc-delete-rows-not-contain-6
doc-arrow
doc-delete-rows-not-contain-7

ملاحظة: قبل الحذف، تأكد مرتين من أن الصفوف المحددة هي بالفعل تلك التي تريد حذفها. لا يمكن استرداد الصفوف المحذوفة إلا بإلغاء الإجراء فورًا (Ctrl+Z). ولا تعمل هذه الطريقة بكفاءة إذا كان جدولك يحتوي على خلايا مدمجة أو مجاميع فرعية متداخلة.


سهم أزرق فقاعة جهة اليمين حذف الصفوف التي لا تحتوي على نص معين باستخدام VBA

إذا كنت بحاجة إلى معالجة مجموعات بيانات كبيرة أو تكرار العملية بشكل متكرر، فإن استخدام VBA (Visual Basic for Applications) يُعدّ حلاً فعّالاً لتسريع عملية الحذف بشكل كبير. ويتيح لك هذا الحل القائم على VBA أتمتة إزالة الصفوف تلقائيًا بناءً على ما إذا كانت الخلايا تحتوي — أو لا تحتوي — على سلاسل نصية معيّنة، مما يجعله خيارًا مثاليًا للمستخدمين ذوي المهارات البرمجية الأساسية أو للسيناريوهات التي تتطلب تخصيص منطق الحذف (مثل المطابقة الحساسة لحالة الأحرف).

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

2. في نافذة المحرر، انقر علىإدراج > وحدة نمطية (Module)لفتح نافذة وحدة نمطية جديدة. ثم انسخ والصق كود VBA التالي في نافذة الوحدة النمطية.

VBA: احذف الصف بالكامل إذا لم تحتوِ الخلية على النص المحدد.

Sub DeleteRowNoInclude()
'Updateby Extendoffice
Dim xRow As Range
Dim rng As Range
Dim WorkRng As Range
Dim xStr As String
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
xStr = Application.InputBox("Text", xTitleId, "", Type:=2)
Application.ScreenUpdating = False
For i = WorkRng.Rows.Count To 1 Step -1
    Set xRow = WorkRng.Rows(i)
    Set rng = xRow.Find(xStr, LookIn:=xlValues)
    If rng Is Nothing Then
       xRow.Delete
    End If
Next
Application.ScreenUpdating = True
End Sub

3. انقر على زرتشغيل (Run). ستظهر نافذة حوارية تطلب منك تحديد النطاق الذي تريد معالجته (مثل العمود الذي تريد البحث فيه عن النص المحدد). انظر لقطة الشاشة:

doc-delete-rows-not-contain-8

4. انقر علىموافق، ثم أدخل النص الذي تريد استخدامه كمعيار للحذف في نافذة الحوار التالية. وللحصول على أفضل النتائج، أدخل النص كما يظهر تمامًا في بياناتك. يقوم الكود بالبحث دون تمييز بين الأحرف الكبيرة والصغيرة (افتراضيًا)؛ عدّل الكود إذا كنت بحاجة إلى تمييز حالة الأحرف. انظر لقطة الشاشة:

doc-delete-rows-not-contain-9

5. انقر علىموافق، وسيتم حذف أي صفوف لا تحتوي خليتها على النص المحدد (مثل «Apple») فورًا. تأكد من حفظ عملك قبل تشغيل ماكرو VBA، لأن هذا الإجراء لا يمكن التراجع عنه بسهولة. إذا ظهرت نتائج غير متوقعة، استخدم التراجع ()Ctrl+Z) أو أغلق الملف دون حفظه، ثم حاول مرة أخرى باستخدام المعلمات الصحيحة. أما إذا كنت من المستخدمين المتقدمين، فيمكنك تعديل هذا الكود ليدعم مطابقات جزئية أو معايير متعددة حسب احتياجاتك.


سهم أزرق فقاعة جهة اليمين حذف الصفوف التي لا تحتوي على نص معين باستخدام Kutools لـ Excel

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

Kutools لـ Excelيحتوي على أكثر من 300 أداة مفيدة لبرنامج Excel. جرّبه مجانًا دون أي قيود لمدة 30 يومًا! احصل عليه الآن

1. حدد العمود الذي تريد حذف الصفوف منه إذا لم تحتوِ على النص المحدد، ثم انقر علىKutools > أدوات التحديد > تحديد خلايا محددة. انظر لقطة الشاشة:

doc-delete-rows-not-contain-10

2. في مربع الحوارتحديد خلايا محددة، اخترالصف بأكمله، ثم حددلا يحتوي علىمن القائمة المنسدلة، وأدخل النص المستهدف في مربع النص. أو، انقر على رمز تحديد النطاق في قسمتحديد النوعلاختيار خلية مرجعية تحتوي على النص المطلوب. ولا تنسَ التحقق من إدخالك بحثًا عن الأخطاء المطبعية أو المسافات الزائدة، فهي قد تؤثر على دقة التحديد.

doc-delete-rows-not-contain-11

3. انقر علىموافق. سيتم تحديد الصفوف التي لا تحتوي على النص المعرّف تلقائيًا. انقر بزر الماوس الأيمن على أيٍّ من الصفوف المُظلَّلة المحددة، واخترحذفمن القائمة السياقية. وستؤدي هذه الخطوة إلى حذف جميع الصفوف المحددة دفعة واحدة. انظر لقطة الشاشة:

doc-delete-rows-not-contain-12

4. الآن، تم حذف جميع الصفوف ضمن النطاق المحدد التي لم تحتوِ على النص الذي حددته من ورقة العمل الخاصة بك. لمزيد من النصائح المتقدمة وأحدث الميزات، راجع: تحديد خلايا محددة الوثائق.

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


سهم أزرق فقاعة جهة اليمين حذف الصفوف التي لا تحتوي على نص معين باستخدام صيغة Excel (عمود مساعد)

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

المزايا:مرنة للغاية، ولا تتطلب إضافات أو VBA، وآمنة لأنها لا تحذف البيانات فورًا—بل يُجري المستخدم مراجعة للنتائج أولًا.العيب:عملية متعددة الخطوات وتتطلب إلمامًا بسيطًا بدوال Excel والفلاتر.

التعليمات:

1. أضف عمودًا مساعدًا جديدًا بجانب بياناتك. وللتوضيح، افترض أن نصك موجود في العمودA، وأن بياناتك تبدأ من الصف 2 (باستثناء رأس الجدول).

2. في الصف الأول من عمود المساعد (مثلًا،)B2)، أدخل الصيغة التالية (استبدل«text» بالنص الذي ترغب في البحث عنه):

=ISNUMBER(SEARCH("text",A2))

تُرجع هذه الصيغةTRUE إذا احتوت الخلية A2 على النص المحدد (كسلسلة فرعية، دون تمييز بين الأحرف الكبيرة والصغيرة)، وFALSE في جميع الحالات الأخرى.

3. اضغط Enter، ثم انقر نقرًا مزدوجًا على الزاوية السفلية اليمنى للخلية لملء الصيغة تلقائيًا في جميع الصفوف الأخرى ضمن مجموعة البيانات الخاصة بك.

4. استخدم وظيفة التصفية على عمود المساعد: انقر على السهم المنسدل، واخترFALSE لعرض الصفوف التيلاتحتوي على النص المستهدف. بعد ذلك، حدد كل هذه الصفوف المُرشَّحة (باستثناء رأس الجدول، إن وُجد)، ثم انقر بزر الماوس الأيمن واخترحذف صف.

5. بعد الحذف، امسح الفلتر لاستعادة العرض. تحقّق من نتائجك، وأزل عمود المساعد إذا رغبتَ بذلك.

ملاحظات حول المعاملات والنصائح:

  • إذا كنت بحاجة إلى مطابقة القيمة الدقيقة للخلية (وليس أجزاءً من النص)، فعدّل الصيغة إلى=A2="نص".
  • إذا كانت بياناتك تحتوي على خلايا فارغة، فإن الدالة ISNUMBER(SEARCH(...)) تُرجع FALSE، وستُعامل تلك الصفوف على أنها لا تحتوي على النص.
  • لمطابقة الأحرف الكبيرة والصغيرة بدقة، استبدل SEARCH بـ FIND في الصيغة.

 

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


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

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

🤖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 يومًا بكامل الميزات— بدون تسجيل، بدون بطاقة ائتمان
  • أفضل قيمة— وفِّر مقارنةً بشراء الإضافات بشكل منفصل