Note: The other languages of the website are Google-translated. Back to English

كيفية إزالة الصفوف بناءً على قيمة الخلية في إكسيل؟

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


قم بإزالة الصفوف بناءً على قيمة الخلية باستخدام ميزة البحث والاستبدال

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

1. حدد النطاق الذي ستزيل فيه الصفوف بناءً على قيمة خلية معينة ، وافتح مربع الحوار "بحث واستبدال" بالضغط على Ctrl + F مفاتيح في نفس الوقت.

2. في مربع الحوار Find and Replace ، يرجى كتابة قيمة خلية معينة (في حالتنا ، نقوم بإدخال سو) داخل ال Find what مربع ، وانقر فوق Find All زر. انظر لقطة الشاشة الأولى أدناه:

3. حدد جميع نتائج البحث أسفل مربع الحوار "بحث واستبدال" ، وأغلق مربع الحوار هذا. (ملاحظة: يمكنك تحديد إحدى نتائج البحث ، ثم Ctrl + A مفاتيح لتحديد جميع النتائج التي تم العثور عليها. انظر لقطة الشاشة الثانية أعلاه).
وبعد ذلك يمكنك أن ترى تم تحديد جميع الخلايا التي تحتوي على قيمة معينة.

4. انتقل إلى النقر بزر الماوس الأيمن فوق الخلايا المحددة وحدد ملف Delete من قائمة النقر بزر الماوس الأيمن. ثم تحقق من ملف Entire row الخيار في مربع الحوار المنبثق حذف ، وانقر فوق OK زر. سترى الآن إزالة جميع الخلايا التي تحتوي على قيمة معينة. انظر لقطات أدناه:

وبعد ذلك تم حذف صفوف كاملة بناءً على قيمة معينة بالفعل.


قم بإزالة الصفوف بناءً على قيمة الخلية برمز VBA

باستخدام رمز فبا التالي ، يمكنك حذف الصفوف ذات قيمة خلية معينة بسرعة ، يرجى اتباع الخطوات التالية:

1. اضغط على Alt + F11 مفاتيح في نفس الوقت لفتح Microsoft Visual Basic for applications نافذة او شباك،

2. انقر Insert > Module، وأدخل الكود التالي في الوحدة النمطية:

فبا: قم بإزالة الصفوف بأكملها بناءً على قيمة الخلية

Sub DeleteRows()
'Updateby20211217
Dim rng As Range
Dim InputRng As Range
Dim DeleteRng As Range
Dim DeleteStr As String
Dim xTitleId As String
Dim xArr
Dim xF As Integer
Dim xWSh As Worksheet
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set rng = Application.Selection
Set InputRng = Application.InputBox("Range :", xTitleId, rng.Address, Type:=8)
If InputRng Is Nothing Then Exit Sub
DeleteStr = Application.InputBox("Delete Text", xTitleId, Type:=2)
Set xWSh = InputRng.Worksheet
For Each rng In InputRng
    If rng.Value = DeleteStr Then
        If DeleteRng Is Nothing Then
            Set DeleteRng = rng
        Else
            Set DeleteRng = Application.Union(DeleteRng, rng)
            Set DeleteRng = DeleteRng.EntireRow
        End If
    End If
Next
xArr = Split(DeleteRng.AddressLocal, ",")
DeleteRng.Select
DeleteRng.Delete
For xF = UBound(xArr) To 0 Step -1
    Set DeleteRng = xWSh.Range(xArr(xF))
    DeleteRng.Delete
Next
End Sub

3. ثم انقر فوق Run زر لتشغيل الكود.

4. في مربع الحوار المنبثق ، يرجى تحديد النطاق الذي ستزيل فيه الصفوف بناءً على قيمة معينة ، وانقر فوق OK .

5. في مربع حوار آخر ، يرجى كتابة القيمة المعينة التي ستزيل الصفوف بناءً عليها ، والنقر فوق OK زر. انظر لقطة الشاشة:

وبعد ذلك سترى تم حذف صفوف كاملة بناءً على القيمة المحددة بالفعل.


قم بإزالة الصفوف بناءً على قيمة خلية واحدة أو اثنتين باستخدام Kutools for Excel

إذا كنت قد قمت بتثبيت Kutools for Excel، في Select Specific Cells يمكن أن تساعدك الميزة في حذف الصفوف ذات القيمة المحددة بسرعة. الرجاء القيام بما يلي:

كوتولس ل إكسيل - يتضمن أكثر من 300 أداة يدوية لبرنامج Excel. نسخة تجريبية مجانية كاملة الميزات 30اليوم ، لا حاجة لبطاقة ائتمان! احصل عليه الآن

1. حدد النطاق الذي ستقوم بإزالة الصفوف بناءً على قيمة معينة ، وانقر فوق Kutools > Select > Select Specific Cells. انظر لقطة الشاشة:

2. في مربع حوار فتح الخلايا المحددة ، يرجى التحقق Entire row الخيار، حدد Contains من Specific type القائمة المنسدلة ، أدخل القيمة المحددة في المربع الأيمن ، وانقر فوق Ok زر (انظر الصورة أعلاه).
بعد تطبيق هذه الميزة ، سيظهر مربع حوار ويظهر لك عدد الخلايا التي تم العثور عليها بناءً على المعايير المحددة. الرجاء الضغط على OK زر لإغلاقه.

3. الآن يتم تحديد صفوف كاملة بقيمة معينة. يرجى النقر بزر الماوس الأيمن فوق الصفوف المحددة ، والنقر فوق Delete من قائمة النقر بزر الماوس الأيمن. انظر لقطة الشاشة أدناه:

ملاحظة: هذا Select Specific Cells تدعم الميزة حذف الصفوف بواحدة أو قيمتين معينتين. لحذف الصفوف بناءً على قيمتين محددتين ، يرجى تحديد قيمة أخرى في Specific type قسم من مربع الحوار Select Specific Cells كما هو موضح في لقطة الشاشة التالية:

كوتولس ل إكسيل - يتضمن أكثر من 300 أداة يدوية لبرنامج Excel. نسخة تجريبية مجانية كاملة الميزات 30اليوم ، لا حاجة لبطاقة ائتمان! احصل عليه الآن


قم بإزالة الصفوف بناءً على قيم خلايا متعددة باستخدام Kutools for Excel

في بعض الحالات ، قد تحتاج إلى إزالة الصفوف بناءً على قيم خلايا متعددة من عمود / قائمة أخرى في Excel. هنا سوف أعرض Kutools for Excel's Select Same & Different Cells ميزة لحلها بسرعة وسهولة.

كوتولس ل إكسيل - يتضمن أكثر من 300 أداة يدوية لبرنامج Excel. نسخة تجريبية مجانية كاملة الميزات 30اليوم ، لا حاجة لبطاقة ائتمان! احصل عليه الآن

1. انقر Kutools > Select > Select Same & Different Cells لفتح مربع الحوار Select Same & Different Cells.

2. في الافتتاح Select Same & Different Cells مربع الحوار ، يرجى القيام بما يلي (انظر لقطة الشاشة):

(1) في Find values in مربع ، الرجاء تحديد العمود حيث ستجد قيم معينة ؛
(2) في According to مربع ، يرجى تحديد العمود / القائمة ذات القيم المتعددة التي ستحذف الصفوف بناءً عليها ؛
(3) في Based on القسم ، يرجى التحقق من Each row الخيار.
(4) في Find القسم ، يرجى التحقق من Same Values الخيار.
(5) تحقق من Select entire rows الخيار في الجزء السفلي من فتح مربع الحوار.
ملاحظة: إذا احتوى عمودان محددان على نفس الرأس ، فيرجى التحقق من My data has headers الخيار.

3. انقر على Ok زر لتطبيق هذه الأداة. ثم يظهر مربع حوار ويظهر عدد الصفوف التي تم تحديدها. فقط انقر فوق ملف OK زر لإغلاقه.

وبعد ذلك تم تحديد جميع الصفوف التي تحتوي على قيم من بين القائمة المحددة.

4. انقر Home > Delete > Delete Sheet Rows لحذف كل الصفوف المختارة.


عرض توضيحي: قم بإزالة الصفوف بناءً على قيمة خلية واحدة أو عدة قيم في Excel


كوتولس ل إكسيل يتضمن أكثر من 300 أداة يدوية لبرنامج Excel ، يمكن تجربتها مجانًا دون قيود في غضون 30 يومًا. تنزيل وتجربة مجانية الآن!

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

Kutools for Excel يحل معظم مشاكلك ويزيد إنتاجيتك بنسبة 80٪

  • إعادة استخدام: أدخل بسرعة الصيغ المعقدة والرسوم البيانية وأي شيء استخدمته من قبل ؛ تشفير الخلايا مع كلمة السر إنشاء قائمة بريدية وإرسال رسائل البريد الإلكتروني ...
  • سوبر فورميولا بار (بسهولة تحرير أسطر متعددة من النص والصيغة) ؛ تخطيط القراءة (قراءة وتحرير أعداد كبيرة من الخلايا بسهولة) ؛ لصق في النطاق المصفى
  • دمج الخلايا / الصفوف / الأعمدة دون فقدان البيانات ؛ تقسيم محتوى الخلايا ؛ ادمج الصفوف / الأعمدة المكررة... منع تكرار الخلايا؛ قارن النطاقات
  • حدد مكرر أو فريد صفوف حدد صفوف فارغة (جميع الخلايا فارغة) ؛ البحث الفائق والبحث الغامض في العديد من المصنفات. تحديد عشوائي ...
  • نسخة طبق الأصل خلايا متعددة بدون تغيير مرجع الصيغة ؛ إنشاء المراجع تلقائيًا إلى أوراق متعددة أدخل الرموز النقطية، مربعات الاختيار والمزيد ...
  • استخراج النص، إضافة نص ، إزالة حسب الموضع ، إزالة الفضاء؛ إنشاء وطباعة المجاميع الفرعية لترحيل الصفحات ؛ التحويل بين محتوى الخلايا والتعليقات
  • سوبر تصفية (حفظ وتطبيق مخططات التصفية على أوراق أخرى) ؛ فرز متقدم حسب الشهر / الأسبوع / اليوم ، التكرار والمزيد ؛ مرشح خاص بواسطة bold، italic ...
  • اجمع بين المصنفات وأوراق العمل؛ دمج الجداول على أساس الأعمدة الرئيسية ؛ تقسيم البيانات إلى أوراق متعددة; تحويل دفعة xls و xlsx و PDF
  • أكثر من 300 ميزة قوية. يدعم Office / Excel 2007-2021 و 365. يدعم جميع اللغات. سهولة النشر في مؤسستك أو مؤسستك. الميزات الكاملة نسخة تجريبية مجانية لمدة 30 يومًا. ضمان استرداد الأموال لمدة 60 يومًا.
علامة تبويب kte 201905

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

  • تمكين التحرير والقراءة المبوبة في Word و Excel و PowerPointوالناشر والوصول و Visio والمشروع.
  • فتح وإنشاء مستندات متعددة في علامات تبويب جديدة من نفس النافذة ، بدلاً من النوافذ الجديدة.
  • يزيد من إنتاجيتك بنسبة 50٪ ، ويقلل مئات النقرات بالماوس كل يوم!
أوفيسيتاب القاع
فرز التعليقات حسب
التعليقات (39)
لا يوجد تقييم. كن أول من يقيم!
تم تصغير هذا التعليق بواسطة المشرف على الموقع
جميل! لقد نجح ذلك في علاج ، وقمت بتغييره قليلاً ليناسب ما أحتاجه ولكنه عبقري خالص. يا نسخة VBA.
تم تصغير هذا التعليق بواسطة المشرف على الموقع
هل توجد أي طريقة لتعديل If (cell.Value) = "Apple" لتضمين قيم متعددة؟
تم تصغير هذا التعليق بواسطة المشرف على الموقع
بوبي ، جرب هذا ، يجب أن تحصل على ما تريد: If (cell.Value) = "Apple" OR (cell.Value) = "Monday"
تم تصغير هذا التعليق بواسطة المشرف على الموقع
هل هناك أي طريقة لتعرف القيمة على قيمة سواء كانت> أو = لقيمة معينة؟
تم تصغير هذا التعليق بواسطة المشرف على الموقع
مرحبًا - شكرًا جزيلاً على النص. كنت أتساءل عما إذا كان يمكنك استخدام أحرف البدل حتى تتمكن من تحديد أي شيء داخل خلية يطابق بدلاً من عنصر معين؟ لقد حاولت استخدام ** wildcards ولكن لا يبدو أنها تفعل شيئًا. إليك ما لدي: Sub Delete_Rows () Dim rng كنطاق ، خلية كنطاق ، del As Range Set rng = Intersect (Range ("B6: B20") ، ActiveSheet.UsedRange) لكل خلية في rng إذا كانت الخلية. "* WORDTODELETE *" _ ثم إذا كان del لا شيء ، فقم بتعيين del = cell Else: تعيين del = Union (del، cell) End If End If Next cell On Error ، استئناف التالي del.EntireRow.Delete End Sub
تم تصغير هذا التعليق بواسطة المشرف على الموقع
شكرًا جزيلاً - إنه أمر ممتع دائمًا عندما يحاول رجل التسويق كتابة التعليمات البرمجية ، وكانت هذه المعلومات مفيدة للغاية. لم أتمكن من الحصول على الكود ليشمل أعمدة متعددة (يعمل "AA2: AA3000" ، يعمل "AB2: AB3000" ، لكن "AA2: AB3000" لا يعمل. لا يوجد كابوم يحطم الأرض - إنه لا يفعل شيئًا. أنا لقد تم حلها (على ما أعتقد) عن طريق تشغيل العديد من وحدات الماكرو بالتسلسل ، ولكن من المحتمل أن تكون هناك طريقة أكثر أناقة. شكرًا مرة أخرى على مساعدتك ، جيم (ميلفيل ، نيويورك)
تم تصغير هذا التعليق بواسطة المشرف على الموقع
أحصل على: خطأ وقت التشغيل '13': يُبرز تصحيح عدم التطابق في النوع If (cell.Value) = "FALSE" _ ثم المقطع. أنا ضائعة تمامًا في MVB ، سأكون ممتنًا لأي مساعدة.
تم تصغير هذا التعليق بواسطة المشرف على الموقع
دعنا نقول إنني أدخلت الكود أدناه لحذف جميع صفوفي التي تحتوي على تفاحة ولكن بعد ذلك أريد الاستمرار بمجرد الانتهاء من ذلك وحذف جميع الصفوف التي تحتوي على الموز؟ حاولت فقط تكرار الكود ولكن يبدو أنه توقف بعد التفاحة. شكرًا. Sub Delete_Rows () Dim rng كنطاق ، خلية كنطاق ، del As Range Set rng = Intersect (Range ("A1: C20") ، ActiveSheet.UsedRange) لكل خلية في rng If (cell.Value) = "Apple" _ ثم إذا كانت del Is Nothing ، فقم بتعيين del = cell Else: Set del = Union (del، cell) End If End If Next cell On Error ، استئناف التالي ، del.EntireRow.Delete End Sub
تم تصغير هذا التعليق بواسطة المشرف على الموقع
أردت فقط أن أقول شكرا لك. عملت هذا وكأنه سحر.
تم تصغير هذا التعليق بواسطة المشرف على الموقع
رائع بالتأكيد! نقدر للمشاركة !!!
تم تصغير هذا التعليق بواسطة المشرف على الموقع
شكرا هذا رائع! تعليق سريع ، جربت وظيفة البحث والاستبدال في Excel 2010. من أجل تحديد جميع النتائج التي تم العثور عليها ، كان علي استخدام Ctrl + A بدلاً من Alt + A.
تم تصغير هذا التعليق بواسطة المشرف على الموقع
مرحبا ماهي أسهل طريقة لحذف الصفوف التي لا تحتوي على "آبل" من فضلك؟ شكرًا
تم تصغير هذا التعليق بواسطة المشرف على الموقع
مرحباً ، أي طريقة لكتابتها لحذف صف ، باستثناء أو؟ أي حذف الصفوف المكررة ، ولكن تجاهل قيمة معينة. أريد حذف التكرارات ، إلا إذا كان العمود المعني يحتوي على ب / ج فارغ لا يحتوي هذا العمود على بيانات صالحة حتى الآن. ركضت كما فعلت ، لكنني انتهيت من حذف الصفوف مع وجود فراغ في العمود المعني ، لذلك لا يمكنني استخدامه كما هو. شكرًا
تم تصغير هذا التعليق بواسطة المشرف على الموقع
شكرا لك على البرنامج النصي VB. لا أستطيع الانتظار لمحاولة هذا. سؤال: هل هناك على أي حال لوضع علامة على الأعمدة للحذف قبل حذفها و / أو نسخها إلى علامة تبويب منفصلة في المصنف؟ بالإضافة إلى ذلك ، هل هناك طريقة لتشغيل هذا البرنامج النصي على عدة مصنفات / ملفات في وقت واحد؟
تم تصغير هذا التعليق بواسطة المشرف على الموقع
شكرا .. انها تساعدني كثيرا ...
تم تصغير هذا التعليق بواسطة المشرف على الموقع
أرغب في حذف كافة الصفوف التي يكون فيها العمود 1 = "Apple" AND column3 = "green". من فضلك؟
تم تصغير هذا التعليق بواسطة المشرف على الموقع
لست متأكدًا من كيفية القيام بذلك باستخدام الماكرو أو ما شابه ، ولكن أحد الخيارات التي تؤدي وظيفتها على ما يرام هو إضافة عمود إضافي يختبر العمود الأول ليكون "تفاحة" والآخر "أخضر" ثم السماح يعطي قيمة بسيطة "نعم" أو "لا". بدلاً من استخدام أي من الخيارات أعلاه للبحث عن القيمة "نعم" وإزالة الصفوف بناءً على ذلك بدلاً من قيمتين منفصلتين.
تم تصغير هذا التعليق بواسطة المشرف على الموقع
لدي قائمة بالمخازن في وثيقة واحدة. لدي تقرير يقوم بإرجاع آلاف السطور. يكون رقم المتجر دائمًا في العمود "أ". هل هناك رمز / ماكرو يبحث في التقرير ويحذف جميع الأعمدة التي تحتوي على أرقام متجر من قائمة المتاجر. هناك حاجة للتفكير في إلقاء نظرة و "افعل أثناء".
تم تصغير هذا التعليق بواسطة المشرف على الموقع
مرحبًا وشكرًا جزيلاً لك على كود VBA. لدي سؤال واحد. هل من الممكن جعل الكود بالطريقة التي يمكن بها اختيار عدة قيم للخلايا لحذفها في نفس الوقت؟ على سبيل المثال اختر Apple و Emily في نفس الوقت وقم بحذفهما؟ أنا أقدر عملك وأتطلع إلى ردك. جوان ك
تم تصغير هذا التعليق بواسطة المشرف على الموقع
كيف يمكنني تحديد النطاق A3: D3000 (على سبيل المثال ، لا أريد أن يقوم المستخدم بتحديد النطاق)؟ كيف يمكنني جعل سلسلة الحذف مرجعًا لخلية ، على سبيل المثال. G1؟
تم تصغير هذا التعليق بواسطة المشرف على الموقع
هل من الممكن مقارنة عمودين ثم حذف؟ يقع في النطاق A3: D3000 إذا كانت الخلية A = x والخلية B = y فاحذف الصف؟
تم تصغير هذا التعليق بواسطة المشرف على الموقع
يا له من عظيم. شكرا جزيلا للجميع. :)
لا توجد تعليقات منشورة هنا حتى الآن
عرض المزيد
اترك تعليقاتك
النشر كضيف
×
قيم المنشور:
0   الشخصيات
المواقع المقترحة

تواصل معنا

حقوق التأليف والنشر © 2009 - شبكة الاتصالات العالمية.extendoffice.com. | كل الحقوق محفوظة. مشغل بواسطة ExtendOffice. | | خريطة الموقع
Microsoft وشعار Office هما علامتان تجاريتان أو علامتان تجاريتان مسجلتان لشركة Microsoft Corporation في الولايات المتحدة و / أو دول أخرى.
محمي بواسطة Sectigo SSL