Vba: كيفية إخفاء الصفوف بناءً على المعايير
يمكنك استخدام بناء الجملة التالي في VBA لإخفاء الصفوف بناءً على قيمة خلية:
SubHideRows ()
Dim i As Integer
For i = 2 To 10
If Cells(i, 1).Value = " Mavs " Then
Cells(i, 1).EntireRow.Hidden = True
Else
Cells(i, 1).EntireRow.Hidden = False
End If
Next i
End Sub
يخفي هذا الماكرو المحدد كافة الصفوف الموجودة في النطاق من 2 إلى 10 والتي لها قيمة خلية تساوي “Mavs” في العمود الأول.
يمكنك أيضًا استخدام الماكرو التالي لعرض كافة الصفوف:
SubUnhideRows ()
Rows.EntireRow.Hidden = False
End Sub
يوضح المثال التالي كيفية استخدام بناء الجملة هذا عمليًا.
مثال: استخدم VBA لإخفاء الصفوف بناءً على المعايير
لنفترض أن لدينا مجموعة البيانات التالية التي تحتوي على معلومات حول لاعبي كرة السلة المختلفين:
لنفترض أننا نريد إخفاء كل صف يحتوي على “Mavs” في عمود الفريق.
يمكننا إنشاء الماكرو التالي للقيام بذلك:
SubHideRows ()
Dim i As Integer
For i = 2 To 10
If Cells(i, 1).Value = " Mavs " Then
Cells(i, 1).EntireRow.Hidden = True
Else
Cells(i, 1).EntireRow.Hidden = False
End If
Next i
End Sub
عندما نقوم بتشغيل هذا الماكرو، نحصل على الإخراج التالي:
لاحظ أنه تم الآن إخفاء كل صف يحتوي على “Mavs” في عمود الفريق.
إذا أردنا، يمكننا إنشاء الماكرو التالي لعرض كافة الصفوف:
SubUnhideRows ()
Rows.EntireRow.Hidden = False
End Sub
عندما نقوم بتشغيل هذا الماكرو، نحصل على الإخراج التالي:
لاحظ أنه يتم عرض كافة الأسطر مرة أخرى.
لاحظ أننا في الماكرو الخاص بنا حددنا For i = 2 To 10 لإخفاء الصفوف بين 2 و10 بناءً على المعايير.
لا تتردد في تغيير قيم البداية والنهاية هذه لإخفاء الصفوف في نطاق صف مختلف.
مصادر إضافية
تشرح البرامج التعليمية التالية كيفية تنفيذ المهام الشائعة الأخرى في VBA:
فبا: كيفية تطبيق التنسيق الشرطي على الخلايا
فبا: كيفية حساب عدد الصفوف في النطاق
VBA: كيفية حساب الخلايا التي تحتوي على نص معين