فبا: كيفية تحديد كافة الخلايا التي تحتوي على البيانات
يمكنك استخدام الطرق التالية في VBA لتحديد كافة الخلايا التي تحتوي على بيانات في الورقة:
الطريقة الأولى: تحديد شبكة خلايا تحتوي على بيانات
SubSelectCellsWithData ()
Range(" A1 ").CurrentRegion.Select
End Sub
سيحدد هذا الماكرو المحدد شبكة من الخلايا تحتوي على بيانات تبدأ من الخلية A1 للورقة النشطة حاليًا.
الطريقة الثانية: تحديد الخلايا الفردية التي تحتوي على البيانات
SubSelectCellsWithData ()
Worksheets(" Sheet1 ").Activate
ActiveSheet.Cells.SpecialCells(xlCellTypeConstants).Activate
End Sub
سيحدد هذا الماكرو المحدد كافة الخلايا الفردية التي تحتوي على بيانات من الورقة1 .
توضح الأمثلة التالية كيفية استخدام كل أسلوب عمليًا مع الورقة التالية التي تسمى Sheet1 في Excel:
مثال 1: حدد شبكة خلايا تحتوي على بيانات
لنفترض أننا نريد تحديد شبكة الخلايا التي تحتوي على البيانات الموجودة في الورقة1 .
يمكننا إنشاء الماكرو التالي للقيام بذلك:
SubSelectCellsWithData ()
Range(" A1 ").CurrentRegion.Select
End Sub
عندما نقوم بتشغيل هذا الماكرو، يمكننا أن نرى أنه تم تحديد شبكة الخلايا بأكملها التي تحتوي على البيانات الموجودة في الورقة1 :
لاحظ أن هذه الطريقة تستخدم خاصية CurrentRegion لتحديد نطاق الخلايا المحاطة بالخلايا الفارغة.
يمكنك العثور على الوثائق الكاملة لخاصية CurrentRegion هنا .
المثال 2: حدد خلايا فردية تحتوي على بيانات
لنفترض أننا نريد تحديد جميع الخلايا الفردية التي تحتوي على البيانات الموجودة في الورقة1 فقط.
يمكننا إنشاء الماكرو التالي للقيام بذلك:
SubSelectCellsWithData ()
Worksheets(" Sheet1 ").Activate
ActiveSheet.Cells.SpecialCells(xlCellTypeConstants).Activate
End Sub
عندما نقوم بتشغيل هذا الماكرو، يمكننا أن نرى أنه تم تحديد كل خلية من الخلايا الفردية في الورقة 1 التي تحتوي على البيانات:
مصادر إضافية
تشرح البرامج التعليمية التالية كيفية تنفيذ المهام الشائعة الأخرى في VBA:
فبا: كيفية تعيين قيمة خلية في ورقة أخرى
فبا: كيفية تحديد نطاق في خلية نشطة
VBA: كيفية حذف الصفوف بناءً على قيمة الخلية