كيفية حذف الأسطر الفارغة في vba (مع أمثلة)
يمكنك استخدام الطرق التالية في VBA لإزالة الأسطر الفارغة:
الطريقة الأولى: إزالة الصفوف الفارغة في نطاق معين
Sub DeleteEmptyRowsInRange()
Sheets(" Sheet1 ").Select
Range(" A1:B10 ").Select
Selection.SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End Sub
سيؤدي هذا الماكرو المحدد إلى إزالة كافة الصفوف الفارغة من النطاق A1:B10 الخاص بالورقة1 .
الطريقة الثانية: حذف الصفوف الفارغة في الورقة بأكملها
Sub DeleteEmptyRowsInSheet()
'turn off screen updating for faster performance
Application.ScreenUpdating = False
Dim i As Long
With ActiveSheet
For i = .Cells.SpecialCells(xlCellTypeLastCell).Row To 1 Step -1
If WorksheetFunction.CountA(.Rows(i)) = 0 Then
ActiveSheet.Rows(i).Delete
End If
Next
End With
'turn screen updating back on
Application.ScreenUpdating = True
End Sub
سيقوم هذا الماكرو المحدد بحذف كافة الصفوف الفارغة من الورقة النشطة بأكملها.
توضح الأمثلة التالية كيفية استخدام كل طريقة عمليًا.
مثال 1: إزالة الأسطر الفارغة في نطاق معين
لنفترض أن لدينا مجموعة البيانات التالية في Excel والتي تحتوي على معلومات حول العديد من لاعبي كرة السلة:
يمكننا إنشاء الماكرو التالي لإزالة كافة الأسطر الفارغة من النطاق A1:B10 في هذه الورقة:
Sub DeleteEmptyRowsInRange()
Sheets(" Sheet1 ").Select
Range(" A1:B10 ").Select
Selection.SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End Sub
بمجرد تشغيل هذا الماكرو، نحصل على الإخراج التالي:
لاحظ أنه تمت إزالة جميع الأسطر الفارغة من النطاق الذي حددناه.
المثال 2: حذف الصفوف الفارغة في ورقة بأكملها
لنفترض أن لدينا مجموعة البيانات التالية في Excel والتي تحتوي على معلومات حول العديد من لاعبي كرة السلة:
يمكننا إنشاء الماكرو التالي لإزالة كافة الأسطر الفارغة من الورقة بأكملها:
Sub DeleteEmptyRowsInSheet()
'turn off screen updating for faster performance
Application.ScreenUpdating = False
Dim i As Long
With ActiveSheet
For i = .Cells.SpecialCells(xlCellTypeLastCell).Row To 1 Step -1
If WorksheetFunction.CountA(.Rows(i)) = 0 Then
ActiveSheet.Rows(i).Delete
End If
Next
End With
'turn screen updating back on
Application.ScreenUpdating = True
End Sub
بمجرد تشغيل هذا الماكرو، نحصل على الإخراج التالي:
لاحظ أنه تمت إزالة جميع الأسطر الفارغة من الورقة بأكملها.
مصادر إضافية
تشرح البرامج التعليمية التالية كيفية تنفيذ المهام الشائعة الأخرى في VBA:
VBA: كيفية حذف الصفوف بناءً على قيمة الخلية
VBA: كيفية حذف ورقة إذا كان الاسم يحتوي على نص محدد
فبا: كيفية حذف الملفات