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

كيف يمكن مسح محتوى الخلية تلقائيًا بناءً على شرط معين في Excel؟

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

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

مسح محتوى الخلية بناءً على قيمة الخلية باستخدام كود VBA

مسح الصف بأكمله إذا كانت القيمة أكبر أو أقل من قيمة معيّنة باستخدام كود VBA

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

مسح الصف بأكمله إذا كانت خلية أخرى فارغة باستخدام كود VBA

مسح محتوى الخلية بناءً على لون الخلفية باستخدام كود VBA


مسح محتوى الخلية بناءً على قيمة الخلية باستخدام كود VBA

على سبيل المثال، لديك نطاق البيانات التالي، وترغب الآن في مسح محتويات الخلايا التي تحتوي على النص «Hoodie»—ويمكنك تحقيق ذلك بسهولة باستخدام الكود التالي المكتوب بلغة VBA.

بيانات نموذجية

1. اضغط مع الاستمرار على مفتاحَيALT + F11 لفتح نافذةمايكروسوفت فيجوال بيسك للتطبيقات.

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

كود VBA: مسح محتوى الخلية إذا كانت الخلية تساوي قيمة معيّنة

Sub ClearContents()
'Updateby ExtendOffice
 Dim xRng As Range
 Dim xCell As Range
 Dim xText As String
 Set xRng = Application.Range("A2:A12")
 xText = "Hoodie" 'Change this text to your own
 For Each xCell In xRng
 If xCell.Value = xText Then
 xCell.clearContents
 End If
 Next xCell
End Sub
ملاحظة: في الكود أعلاه،A2:A12هو نطاق البيانات الذي تريد مسح محتوى الخلية منه، والنص “Hoodie” هو القيمة المعيّنة التي تريد مسحها. يُرجى تغييرها بما يناسبك.

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

كود VBA لمسح محتويات الخلية بناءً على قيمة الخلية

لقطة شاشة لـ kutools for excel الذكاء الاصطناعي

افتح سحر إكسل مع KUTOOLS AI

  • التنفيذ الذكي: نفِّذ عمليات الخلايا، وحلِّل البيانات، وأنشئ المخططات البيانية—كل ذلك بنقرات بسيطة!
  • الصيغ المخصصة: أنشئ صيغًا مخصصة لتبسيط سير عملك.
  • برمجة VBA: اكتب ونفِّذ أكواد VBA بسلاسة.
  • تفسير الصيغ: افهم الصيغ المعقدة بسهولةٍ تامة.
  • ترجمة النصوص: اقتحم حواجز اللغة داخل جداولك الإلكترونية.
عزِّز قدراتك في إكسل بأدوات مدعومة بالذكاء الاصطناعي.حمِّل الآنوجرِّب الكفاءة كما لم تفعل من قبل!

مسح الصف بأكمله إذا كانت القيمة أكبر أو أقل من قيمة معيّنة باستخدام كود VBA

لنفترض أن لديك نطاق البيانات أدناه، وترغب في مسح محتويات الصف بالكامل إذا كانت القيمة في العمود D أكبر من 300 أو أقل منها. سأقوم هنا بإنشاء كود VBA لإتمام هذه المهمة بكفاءة.

بيانات نموذجية

1. اضغط مع الاستمرار على مفتاحَيALT + F11 لفتح نافذةمايكروسوفت فيجوال بيسك للتطبيقات.

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

كود VBA: مسح الصف بأكمله إذا كانت قيمة الخلية أكبر أو أقل من قيمة معيّنة

Sub ClearRowInValue()
'Updateby ExtendOffice
Dim xRg As Range
Dim xStrAddress As String
Dim xStrValue As Integer
Dim xCell As Range
Dim xRowRg As Range
Dim xF As Integer
Dim xBol As Boolean
xStrAddress = "D2:D12" 'Change cell range
xStrValue = 300 'change the value
Set xRg = Range(xStrAddress)
For xF = xRg.Rows.Count To 1 Step -1
    Set xRowRg = xRg.Rows.Item(xF)
    xBol = False
    For Each xCell In xRowRg.Cells
        If Application.IsNumber(xCell.Value) Then
        If xCell.Value > xStrValue Then
        xBol = True
        Exit For
        End If
        End If
    Next
    If xBol Then
        xRowRg.EntireRow.clearContents
    End If
Next
End Sub
ملاحظة: في الكود أعلاه،D2:D12هو نطاق البيانات الذي يحتوي على القيمة المعيّنة التي تريد مسح الصفوف بناءً عليها؛300هي القيمة المعيّنة؛ ورمز>الموجود في السطرIf xCell.Value > xStrValue Thenيعني «أكبر من»، وللاستخدام «أقل من»، غيّره إلى الرمز<حسب الحاجة.

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

كود VBA لمسح صفوف كاملة إذا كانت القيمة أكبر أو أقل من قيمة معيّنة


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

إذا كنت تمتلكKutools لـ Excel، فبفضل ميزتهتحديد خلايا محددة، يمكنك تحديد الخلايا أو الصفوف بناءً على القيمة المعيّنة، ثم حذف محتوياتها دفعة واحدة.

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

بعد تثبيتKutools لـ Excel، يُرجى اتباع الخطوات التالية:

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

انقر فوق Kutools > تحديد > تحديد خلايا محددة

2. في مربع الحوارتحديد خلايا محددةالمفتوح، قم بالعمليات التالية:

  • انقرخليةأوالصف بأكملهالتي تريد تحديدها؛
  • حدّد المعايير في قسمتحديد النوعوفقًا لاحتياجاتك. هنا، أريد تحديد الصفوف التي تكون قيمتها في العمود D أكبر من 300.

تحديد الخيارات في مربع الحوار

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

تم تحديد جميع الصفوف التي تحتوي على قيمة أكبر من القيمة المعيّنة، ثم تم حذف المحتويات

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

مسح الصفوف البيانات داخل التحديد إذا احتوت على خلية فارغة باستخدام كود VBA

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

مسح بيانات الصفوف في نطاق ما إذا احتوت على خلية فارغة

لإكمال هذه المهمة، يُرجى تطبيق كود VBA التالي:

1. اضغط مع الاستمرار على مفتاحَيALT + F11 لفتح نافذةمايكروسوفت فيجوال بيسك للتطبيقات.

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

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

Sub ClearContents()
'Updateby ExtendOffice
Dim xcell As Range
Set xrng = Application.Range("A2:D12")
For Each xcell In xrng
If xcell.Value = "" Then
Intersect(xcell.EntireRow, xrng).ClearContents
End If
Next
End Sub
ملاحظة: في الكود أعلاه،A2:D12هو نطاق البيانات الذي يحتوي على الخلايا الفارغة التي تريد مسح محتوى الخلية منها.

3. بعد ذلك، اضغط على مفتاحF5 لتشغيل هذا الكود، وستُمسح بيانات الصفوف التي تحتوي على خلايا فارغة دفعةً واحدة في النطاق المحدد حسب رغبتك.


مسح محتوى الخلية بناءً على لون الخلفية باستخدام كود VBA

لمسح الخلايا التي تحتوي على لون خلفية معيّن، يمكنك استخدام كود VBA التالي.

1. اضغط مع الاستمرار علىALT + F11مفتاحَيْ لفتح نافذةمايكروسوفت فيجوال بيسك للتطبيقات.

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

كود VBA: مسح محتوى الخلية بناءً على لون الخلفية

Sub Clearcontents()
'Updateby ExtendOffice
Dim xcell As Range
Dim xrng As Range
Set xrng = Application.Range("A2:D12")
    For Each xcell In xrng
        If xcell.Interior.Color = RGB(252, 228, 214) Then
            xcell.Clearcontents
        End If
    Next
End Sub
ملاحظة: في الكود أعلاه،A2:D12هو نطاق البيانات الذي تريد استخدامه،RGB(252، 228، 214)هو اللون المعيّن الذي تريد مسح الخلايا بناءً عليه، ويمكنك استخراج نمط RGB الخاص بـ لون الخلفية باستخدام برنامجPaintعلى جهاز الكمبيوتر الخاص بك.

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

كود VBA لمسح محتويات الخلية بناءً على لون الخلفية


  • محرر متعدد الأسطر فائق من شريط الصيغة (يمكّنك من تحرير أسطر نصية متعددة والمعادلات بسهولة)؛وضع القراءة (لقراءة وتحرير عدد كبير من الخلايا بكل يسر)؛لصق في نطاق التصفية...
  • الخلايا المدمجة / الصفوف / الأعمدةمع الاحتفاظ بالبيانات؛ تقسيم محتوى الخلايا؛دمج الصفوف المكررة وجمع القيم أو حساب المتوسط... منع إدخال القيم المكررة في الخلايا؛مقارنة النطاقات...
  • تحديد الصفوف المكرَّرة أو ذات القيم الفريدة؛تحديد الصفوف الفارغة (جميع الخلايا فارغة)؛البحث المتقدم والبحث التقريبيعبر العديد من ملفات العمل؛ تحديد عشوائي...
  • انسخ بدقةخلايا متعددة دون تغيير مراجع المعادلات؛أنشئ مراجع تلقائيةلأوراق عمل متعددة؛أدرج رموز تعداد نقطي، ومربعات تحديد، وأكثر من ذلك...
  • احفظ الصيغ المفضلة وأدرجها بسرعة، وكذلك النطاقات والرسوم البيانية والصور؛وشفّر الخلايابكلمة مرور؛وأنشئ قائمة بريد إلكترونيوأرسل رسائل البريد الإلكتروني...
  • استخراج النص، وإضافة نص، وحذف الأحرف من موقع معين،وإزالة المسافات؛ وإنشاء إحصاءات صفحة البيانات وطباعتها؛والتحويل بين محتوى الخلايا والتعليقات...
  • مرشح متقدم (يتيح لك حفظ مخططات التصفية وتطبيقها على أوراق أخرى)؛ترتيب متقدمحسب الشهر أو الأسبوع أو اليوم أو التكرار وغير ذلك؛تصفية خاصةحسب التنسيق العريض أو المائل...
  • ادمج ملفات العمل وأوراق العمل؛ ادمج الجداول استنادًا إلى العمود الرئيسي؛قسّم البيانات إلى أوراق عمل متعددة؛حوّل دفعةً واحدةً من ملفات XLS وXLSX وPDF...
  • تجميع جدول البيانات المحوري حسبرقم الأسبوع، ويوم الأسبوع، وأكثر من ذلك... عرض الخلايا غير المؤمَّنة وقفل التحديدبألوان مختلفة؛تمييز الخلايا التي تحتوي على صيغة أو اسم...
kte tab 201905
  • تمكّن من التحرير والقراءة باستخدام علامات التبويب في Word وExcel وPowerPoint، بالإضافة إلى Publisher وAccess وVisio وProject.
  • افتح وأنشئ مستندات متعددة في علامات تبويب جديدة داخل النافذة نفسها، بدلًا من فتح نوافذ جديدة.
  • يزيد إنتاجيتك بنسبة 50% ويوفّر عليك مئات النقرات كل يوم!
officetab bottom