جدول المحتويات
Excel فرز & أمبير ؛ أمر التصفية له نطاق محدود لـ تصفية البيانات . ولكن باستخدام VBA يمكنك تصفية البيانات في نطاق واسع كما يحلو لك. ستوفر لك هذه المقالة 8 أمثلة مفيدة لاستخدام رمز VBA إلى تصفية البيانات في Excel باستخدام رموز VBA مع رسوم توضيحية حية.
تنزيل Practice Workbook
يمكنك تنزيل قالب Excel المجاني من هنا والتدرب بنفسك.
كود VBA لتصفية البيانات. xlsm
8 أمثلة لاستخدام كود VBA لتصفية البيانات في Excel
دعنا نتعرف على مجموعة البيانات أولاً التي تمثل بعض جنس الطلاب وحالتهم وظروفهم. العمر .
1. استخدم رمز VBA لتصفية البيانات استنادًا إلى معايير النص في Excel
في مثالنا الأول ، سنستخدم VBA إلى عامل التصفية فقط ذكور طلاب من عمود الجنس في مجموعة البيانات.
الخطوات:
- انقر بزر الماوس الأيمن في عنوان الورقة .
- ثم حدد عرض الرمز من قائمة السياق .
قريبًا بعد ذلك ، سيتم فتح نافذة VBA .
- اكتب الرموز التالية في -
1208
- لاحقًا ، قم بتصغير VBA
تفصيل الكود
- هنا ، قمت بإنشاء إجراء فرعي ، Filter_Data_Text () .
- ثم استخدم Range للإعلان عن اسم الورقة الخاص بنا و النطاق
- بعد ذلك ، استخدمت طريقة التصفية التلقائية لاستخدام معايير من خياري حيث الحقل: = 2 يعني العمود 2 . و معيار 1: = "ذكر" إلى تصفية بيانات ذكر.
- بعد ذلك ، إلى افتح في مربع حوار وحدات الماكرو ، انقر فوق كما يلي: Developer & gt؛ وحدات الماكرو.
- حدد اسم الماكرو كما هو مذكور في أكواد .
- أخيرًا ، فقط اضغط تشغيل .
الآن ألق نظرة على أننا حصلنا على بيانات الطلاب بعد تصفية .
اقرأ المزيد: بيانات تصفية Excel استنادًا إلى قيمة الخلية (6 طرق فعالة)
2. قم بتطبيق كود VBA لتصفية البيانات بمعايير متعددة في عمود واحد
هنا ، سنقوم بتصفية لمعايير متعددة في عمود واحد. من العمود رقم ثلاثة من مجموعة البيانات ، سنقوم تصفية لطلاب الدراسات العليا و طلاب الدراسات العليا .
الخطوات:
- اتبع الخطوتين الأوليين من المثال الأول لفتح نافذة VBA .
- لاحقًا ، اكتب الرموز التالية فيها-
9452
- ثم تصغير VBA
تفصيل الكود
- هنا ، قمت بإنشاء إجراء Sub ، Filter_One_Column () .
- ثم استخدم خاصية Range للإعلان عن اسم الورقة الخاص بنا و النطاق
- بعد ذلك ، استخدمت ملفطريقة التصفية التلقائية لاستخدام معايير من اختياري حيث الحقل: = 3 يعني العمود 3 . هنا ، Criteria1: = "Graduate" و Criteria2: = "Postgraduate" إلى تصفية حالة الطالب .
- أخيرًا ، استخدمت عامل التشغيل: = xlOr لتطبيق شرط أو عامل التصفية لمعايير متعددة.
- عند هذا لحظة ، اتبع الخطوة الثالثة من المثال الأول لفتح مربع حوار وحدات الماكرو مربع .
- لاحقًا ، حدد اسم الماكرو المحدد و اضغط تشغيل .
بعد فترة وجيزة ، ستحصل على الصفوف التي تمت تصفيتها بناءً على معايير متعددة مثل الصورة أدناه.
اقرأ المزيد: تصفية معايير متعددة في Excel (4 طرق مناسبة)
3. قم بتطبيق كود VBA لتصفية البيانات بمعايير متعددة في أعمدة مختلفة في Excel
الآن سنقوم تصفية لمعايير متعددة- ذكر و خريج الطلاب.
الخطوات:
- اتبع الخطوتين الأوليين من المثال الأول افتح VBA
- لاحقًا ، اكتب الرموز التالية فيها-
8852
- بعد أن تصغير نافذة VBA .
Code Breakdown
- هنا ، قمت بإنشاء إجراء فرعي ، Filter_Different_Columns () .
- ثم استخدمت العبارة مع لاستخدام عمود متعدد .
- ثم استخدم النطاق للإعلان عن اسم الورقة الخاص بنا و النطاق
- بعد ذلك ، استخدمت طريقة التصفية التلقائية لاستخدام معايير من خياري حيث الحقل: = 2 يعني العمود 2 و الحقل: = 3 يعني العمود 3 .
- هنا ، تم تحديد معايير 1: = "ذكر" لعمود الجنس و معايير 1: = "تخرج" لعمود الحالة إلى عامل التصفية بيانات من أعمدة مختلفة .
- ثم اتبع الخطوة الثالثة من المثال الأول لفتح مربع حوار وحدات الماكرو .
- لاحقًا ، حدد اسم الماكرو المحدد و اضغط تشغيل .
هذا هو ناتج المعايير المتعددة.
اقرأ المزيد: Excel VBA للتصفية في نفس العمود حسب معايير متعددة (6 أمثلة)
4. استخدم رمز VBA لتصفية العناصر الثلاثة الأولى في Excel
في هذا المثال ، سنقوم بتصفية الطلاب الثلاثة الأوائل وفقًا لعمرهم .
الخطوات:
- اتبع الخطوتين الأوليين من المثال الأول لفتح نافذة VBA .
- ثم اكتب الرموز التالية فيها-
1925
- بعد ذلك قم بتصغير نافذة VBA .
Code Breakdown
- هنا ، أنا إنشاء إجراء فرعي ، Filter_Top3_Items () .
- ثم استخدم عامل التشغيل: = xlTop10Items إلى عامل التصفية لـ الثلاثة الاوائل البيانات .
- الآن اتبع الخطوة الثالثة من المثال الأول لفتح مربع حوار وحدات الماكرو مربع .
- ثم حدد اسم الماكرو كما هو مذكور في الرموز و اضغط تشغيل .
ثم ستحصل على الإخراج مثل الصورة أدناه-
اقرأ المزيد: كيفية التصفية استنادًا إلى قيمة الخلية باستخدام Excel VBA (طرق 4)
قراءات مماثلة
- كيفية النسخ واللصق متى يتم تطبيق عامل التصفية في Excel
- كيفية تصفية القيم الفريدة في Excel (8 طرق سهلة)
- تصفية معايير متعددة في Excel باستخدام VBA (كلاهما AND و OR أنواع)
- كيفية استخدام عامل تصفية النص في Excel (5 أمثلة)
- كيفية التصفية حسب التاريخ في Excel (4 سريع الطرق)
5. استخدم كود VBA لتصفية أفضل 50 بالمائة في Excel
لنستخدم أكواد VBA لتصفية أعلى خمسين بالمائة من الطلاب بناءً على أعمارهم .
الخطوات:
- أولاً ، اتبع الخطوتين الأوليين من المثال الأول لفتح نافذة VBA .
- لاحقًا ، اكتب الرموز التالية فيها-
8376
- تصغير نافذة VBA .
Code Breakdown
- هنا ، قمت بإنشاء إجراء فرعي ، Filter_Top50_Percent () .
- لاحقًا ، استخدم عامل التشغيل: = xlTop10Percent إلى تصفية أعلى خمسين بالمائة من عمود -4 .
- في هذه اللحظة ، اتبع الخطوة الثالثة من المثال الأول لفتح مربع حوار وحدات الماكرو.
- ثم حدد المحدد اسم الماكرو و اضغط تشغيل .
كان هناك ما مجموعه 7 طلاب لذلك بالنسبة لـ 50 بالمائة ، يتم عرض ما يقرب من ثلاثة طلاب .
اقرأ المزيد: كيفية استخدام صيغة نسبة الربح في Excel (3 أمثلة)
6 . قم بتطبيق كود VBA لتصفية البيانات باستخدام Wildcard
يمكننا استخدام أحرف Wildcard- * (علامة النجمة) في رموز VBA لتصفية البيانات في Excel. من عمود الحالة ، سنقوم بتصفية قيم التي تحتوي على "نشر" .
الخطوات:
- اتبع الخطوتين الأوليين من المثال الأول لفتح نافذة VBA .
- ثم اكتب الرموز التالية فيها-
9038
- لاحقًا ، قم بتصغير نافذة VBA .
تفصيل الكود
- هنا ، قمت بإنشاء إجراء فرعي ، Filter_with_Wildcard () .
- ثم استخدم النطاق ("B4") لتعيين النطاق.
- التالي ، مستخدم AutoFilter إلى Filter في Field: = 3 تعني العمود 3.
- Criteria1: = "* Post * " إلى تصفية القيم التي تحتوي على" نشر ".
- الآن اتبع الخطوة الثالثة من أولاً مثال لفتح مربع حوار وحدات الماكرومربع.
- حدد اسم الماكرو المحدد و اضغط تشغيل .
ثم ستحصل على الإخراج المطلوب.
اقرأ المزيد: كيفية إضافة عامل تصفية في Excel (4 طرق )
7. قم بتضمين Excel VBA لنسخ البيانات التي تمت تصفيتها في ورقة جديدة في Excel
تأكد من وجود بعض البيانات التي تمت تصفيتها في مجموعة البيانات الخاصة بي. الآن سأقوم بنسخها في ورقة جديدة باستخدام VBA . لن تعمل هذه الرموز بشكل صحيح في الورقة ، سيكون عليك تطبيقها في الوحدة.
الخطوات:
- اضغط على Alt + F11 لفتح VBA
- ثم انقر فوق Insert & gt؛ الوحدة إلى افتح وحدة .
- الآن اكتب الرموز التالية -
5100
- ثم تصغير VBA
Code Breakdown
- هنا ، قمت بإنشاء إجراء Sub ، Copy_Filtered_Data_NewSheet () .
- بعد ذلك أعلن عن متغيرين- x Rng كنطاق و xWS كورقة عمل.
- ثم استخدم IF عبارة حدد تمت تصفيته
- لاحقًا ، استخدم MsgBox لإظهار الإخراج.
- ثم استخدم أوراق العمل ("نسخ البيانات المفلترة"). تصفية تلقائية .Range لتحديد النطاق المصفاة واستخدام إضافة لإضافة ورقة جديدة.
- أخيرًا ، Copy Range (“G4”) <سيقوم 2> بنسخ البيانات المفلترة إلى ورقة جديدة .
- لاحقًا ، اتبعالخطوة الثالثة من المثال الأول لفتح مربع حوار وحدات الماكرو .
- ثم حدد المحدد اسم الماكرو و اضغط على تشغيل .
الآن شاهد أن Excel قد فتح ورقة جديدة ونسخ الصفوف التي تمت تصفيتها.
اقرأ المزيد: اختصار لمرشح Excel (3 استخدامات سريعة مع أمثلة)
8. قم بتطبيق كود VBA لتصفية البيانات باستخدام القائمة المنسدلة
في مثالنا الأخير ، سنقوم بإنشاء قائمة منسدلة للأجناس أولاً ثم سنستخدمها لتصفية البيانات. لذلك ، لقد وضعت معايير الجنس في مكان آخر وسنقوم بعمل قائمة منسدلة في الخلية D14 .
الخطوات:
- حدد الخلية D14 .
- ثم انقر فوق كما يلي: Data & gt؛ أدوات البيانات و GT. التحقق من صحة البيانات & GT. التحقق من صحة البيانات.
بعد فترة وجيزة ، سيتم فتح مربع حوار .
حدد قائمة من القائمة المنسدلة السماح .
ثم انقر فوق أيقونة فتح من مربع المصدر .
الآن حدد نطاق المعايير و اضغط على زر Enter .
- في هذه اللحظة ، فقط اضغط موافق .
الآن القائمة المنسدلة جاهزة.
- الآن اتبع الخطوتين الأوليين من المثال الأول لفتح نافذة VBA .
- ثم اكتب الرموز التالية فيها-
3578
- ثم قلل VBAنافذة .
تفصيل الكود
- هنا ، قمت بإنشاء إجراء Private Sub ، Worksheet_Change (ByVal Target As Range).
- ثم حددت ورقة العمل من عام و تغيير من الإعلانات .
- ثم قم بتعيين العنوان لمعرفة الموقع.
- أخيرًا ضمن العبارة IF استخدم أسلوب التصفية التلقائية مع الحقل و المعايير
- الآن فقط حدد المعايير من القائمة المنسدلة وسيتم تنشيط الفلتر .
إليك إخراج تمت تصفيته بعد تحديد ذكر من القائمة المنسدلة .
قراءة المزيد: كيفية التصفية حسب القائمة في ورقة أخرى في Excel (طريقتان)
قسم التدريب
ستحصل على ورقة تدريب في ملف Excel المذكور أعلاه لممارسة الطرق الموضحة.
الخاتمة
آمل أن تكون الإجراءات الموضحة أعلاه جيدة بما يكفي لاستخدام كود VBA لـ تصفية بيانات Excel. لا تتردد في طرح أي سؤال في قسم التعليقات ويرجى إعطائي ملاحظات.