يعد تصفية البيانات في Excel باستخدام كود VBA من المهام الأساسية التي يحتاجها الكثيرون لتسريع العمل وتحسين الكفاءة. في هذا الدرس، سنشرح كيفية كتابة كود VBA لتصفية بيانات معينة عند الضغط على زر في Excel.
الأكواد
يمكنك البدء بنسخ الكود التالي ثم لصقه في محرر الأكواد الخاص بـ VBA داخل Excel، مع تعديل النطاقات والمعايير حسب حاجتك.
Sub FilterData()
Dim ws As Worksheet
Set ws = ThisWorkbook.Sheets("Sheet1") ' تأكد أن الاسم يتطابق مع اسم الورقة
' مسح الفلاتر القديمة
ws.AutoFilterMode = False
' قم بتحديد نطاق البيانات الذي تريد تصفيته
ws.Range("A1:C100").AutoFilter Field:=2, Criteria1:="معيار التصنيف"
End Sub
شرح الكود
- تحديد الورقة:
Dim ws As Worksheet Set ws = ThisWorkbook.Sheets("Sheet1")
هذه الأوامر تقوم بتحديد الورقة التي ستعمل عليها الأكواد. تأكد من تعديل “Sheet1” ليطابق اسم الورقة التي تريد تطبيق الكود عليها. - إزالة الفلاتر السابقة:
ws.AutoFilterMode = False
إذا كان هناك أي فلاتر موجودة مسبقًا، فسيتم إزالتها لضمان تصفية البيانات من جديد. - تطبيق الفلتر:
ws.Range("A1:C100").AutoFilter Field:=2, Criteria1:="معيار التصنيف"
هنا يتم تطبيق الفلتر على النطاق المحدد (“A1”)، حيث يتم تصفية العمود الثاني بناءً على المعيار الذي تختاره (يمكنك تعديل “معيار التصنيف” إلى أي قيمة تريد).
كيفية وضع الكود في Excel
- افتح ملف Excel وانتقل إلى علامة التبويب المطور (Developer).
- اختر Visual Basic لفتح محرر VBA.
- أنشئ وحدة جديدة (Module) والصق الكود فيها.
- أغلق المحرر وارجع إلى ورقة العمل.
- أضف زرًا واضبطه ليشغل كود
FilterData
عند الضغط عليه.
لتحميل المثال من الرابط التال
تحميل ميديا فير
تحياتي