جدول المحتويات
يعد تطبيق VBA أكثر الطرق فعالية وسرعة وأمانًا لتشغيل أي عملية في Excel. في هذه المقالة ، سنوضح لك كيفية التحقق مما إذا كانت السلسلة تحتوي على سلسلة أخرى في Excel باستخدام VBA .
تنزيل نموذج التدريب
أنت يمكنك تنزيل نموذج Excel التدريبي المجاني من هنا.
VBA للتحقق مما إذا كانت السلسلة تحتوي على قيمة. xlsm
6 طرق في VBA للتحقق مما إذا كانت السلسلة تحتوي على سلسلة أخرى في Excel
أدناه في هذا القسم ، ستجد 6 طرق فعالة حول كيفية تنفيذ VBA للتحقق مما إذا كانت السلسلة تحتوي على سلسلة أخرى أم لا .
1. VBA للتحقق مما إذا كانت السلسلة تحتوي على سلسلة فرعية
أدناه مثال دالة InStr لمعرفة ما إذا كانت السلسلة تحتوي على سلسلة فرعية في Excel.
الخطوات:
- اضغط على Alt + F11 على لوحة المفاتيح أو انتقل إلى علامة التبويب Developer - & gt؛ Visual Basic لفتح محرر Visual Basic .
- في نافذة التعليمات البرمجية المنبثقة ، من شريط القوائم ، انقر فوق إدراج - & GT. الوحدة النمطية .
- في نافذة التعليمات البرمجية ، انسخ الكود التالي والصقه.
9081
Your الكود جاهز الآن للتشغيل.
- تشغيل .
إذا كانت السلسلة تحتوي على السلسلة الفرعية ، فسيتم العثور على تطابق ، وإلا فلن يتم إرجاع أي تطابق.
في مثالنا ، أردنا معرفة ما إذا كانالسلسلة الأساسية " الفيلم: الرجل الحديدي ، باتمان ، سوبرمان ، سبايدرمان ، ثور " تحتوي على كلمة " Hulk " أم لا. نظرًا لأنه لم يتم العثور على نتيجة لم يتم العثور على الفيلم .
2. VBA للتحقق مما إذا كانت السلسلة تحتوي على رقم
يمكنك البحث عما إذا كانت السلاسل تحتوي على أرقام أم لا باستخدام رمز VBA .
انظر إلى المثال التالي حيث نحن سيجد السلاسل التي تحتوي على أرقام بأسماء الأفلام.
خطوات للتحقق مما إذا كانت السلاسل تحتوي على أرقام مع VBA أدناه.
الخطوات:
- بنفس الطريقة السابقة ، افتح محرر Visual Basic من علامة التبويب المطور ثم إدراج a Module في نافذة الكود.
- في نافذة الكود ، انسخ الكود التالي والصقه.
8917
- هذا ليس إجراء فرعي لتشغيل برنامج VBA ، وهذا هو إنشاء وظيفة محددة بواسطة المستخدم (UDF) ، والتي سنقوم باستدعائها في ورقة العمل الخاصة بنا لتنفيذ المهمة. لذلك ، بعد كتابة الرمز ، بدلاً من النقر فوق الزر تشغيل ، انقر فوق الزر حفظ من شريط القائمة لحفظ ملف الماكرو.
- الآن ارجع للخلف إلى ورقة العمل المهمة واكتب الوظيفة المعرفة من قبل المستخدم التي أنشأتها للتو في كود VBA ( رقم البحث ، في السطر الأول من الكود) وداخل أقواس الوظيفة ، أدخل الرقم المرجعي للخلية لخلية السلسلة التي تحتوي على أرقام بادئة (مثل خليةB5 ).
- اضغط على أدخل .
ستحصل على قيمة منطقية ( TRUE أو False ) ، إذا كانت السلسلة في الخلية تحتوي على أرقام ، فستحصل على TRUE ، وإلا FALSE .
- اسحب الخلية لأسفل بمقدار مقبض التعبئة لتطبيق الصيغة على باقي الخلايا للتحقق من السلسلة التي تحتوي على أرقام وأيها لا تحتوي.
3. VBA لاستخراج الأرقام من سلسلة
في القسم أعلاه ، نتعلم كيفية التحقق مما إذا كانت السلسلة تحتوي على أرقام أم لا. وفي هذا القسم ، سنتعلم كيفية استخراج هذه الأرقام ووضعها في خلية أخرى باستخدام المثال الموضح أدناه.
خطوات للتحقق مما إذا كانت السلاسل تحتوي على أرقام واستخراجها مع VBA مذكورة أدناه.
الخطوات:
- فتح محرر Visual Basic من علامة التبويب Developer و أدخل a UserForm هذه المرة من علامة التبويب Insert في نافذة التعليمات البرمجية.
- من ظهور Toolbox ، اسحب وأفلت CommandButton في UserForm .
- انقر نقرًا مزدوجًا فوق على ، انسخ الكود التالي والصقه.
2259
- قم بتشغيل الرمز وسيأخذك إلى ورقة العمل التي تهمك. 1> انقر فوق زر الأمر وستحصل على الرقم المستخرج من السلاسل.
4. VBA للتحقق مما إذا كانت السلسلة تحتوي على حرف معين
هذه الطريقة تقريبًاتشبه طريقة التحقق من السلسلة الفرعية في سلسلة.
أدناه هي وظيفة InStr لمعرفة ما إذا كانت السلسلة تحتوي على حرف معين في Excel.
خطوات :
- بنفس الطريقة السابقة ، افتح محرر Visual Basic من علامة التبويب Developer و أدخل a الوحدة النمطية في نافذة التعليمات البرمجية.
- في نافذة التعليمات البرمجية ، انسخ الكود التالي والصقه.
2299
الكود الخاص بك جاهز الآن للتشغيل.
- قم بتشغيل البرنامج. إذا كانت السلسلة تحتوي على الحرف فسيتم العثور على تطابق ، وإلا فلن يتم العثور على تطابق.
في مثالنا ، أردنا معرفة ما إذا كانت السلسلة الأساسية " الفيلم: Iron Man ، Batman ، Superman ، Spiderman ، Thor " تحتوي على الحرف " Z "أم لا. نظرًا لأنه لم يتم العثور على نتيجة لم يتم العثور على الحرف .
5. VBA للتحقق مما إذا كان نطاق السلسلة يحتوي على سلسلة أخرى
لقد تعلمنا كيفية التحقق مما إذا كانت سلسلة معينة تحتوي على سلسلة أخرى أم لا. ولكن في هذا القسم ، سنتعلم كيفية التحقق مما إذا كان نطاق السلاسل يحتوي على سلسلة فرعية أم لا باستخدام مجموعة البيانات التالية كمثال.
الخطوات:
- افتح محرر Visual Basic من علامة التبويب Developer و أدخل وحدة في نافذة التعليمات البرمجية .
- في نافذة التعليمات البرمجية ، انسخ الكود التالي والصقه.
2223
الرمز الخاص بك جاهز الآنتشغيل.
- قم بتشغيل الكود.
إذا نطاق من تحتوي السلسلة على السلسلة الفرعية ثم ستحصل على تطابق موجود ، وإلا فلن يُرجع أي تطابق موجود.
6. VBA لاستخراج سلاسل من سلسلة
في هذا القسم ، سنرى كيفية التحقق مما إذا كانت السلاسل تحتوي على سلاسل فرعية معينة واستخراجها في خلية أخرى.
سنستخرج معلومات من الأسماء التي تبدأ بـ " Chris " من مجموعة البيانات التالية.
الخطوات :
- افتح محرر Visual Basic من علامة التبويب Developer و أدخل a Module في نافذة التعليمات البرمجية.
- في نافذة التعليمات البرمجية ، انسخ الكود التالي والصقه.
7386
الرمز الخاص بك جاهز الآن للتشغيل.
- تشغيل الكود.
فقط الأسماء التي تبدأ بـ " كريس " يتم تخزينها في الخلايا المحددة مسبقًا.