إذا لم يكن VBA | كيفية استخدام وظيفة IF & NOT في Excel VBA؟

إذا لم يكن في VBA

الوظائف المنطقية مفيدة للحسابات التي تتطلب شروطًا أو معايير متعددة للاختبار. في مقالاتنا السابقة ، رأينا شروط "VBA IF" و "VBA OR" و "VBA AND". في هذه المقالة ، سنناقش وظيفة "VBA IF NOT". قبل تقديم وظيفة VBA IF NOT ، دعني أوضح لك وظيفة VBA NOT أولاً.

ما هي وظيفة NOT في VBA؟

"NOT" هي إحدى الوظائف المنطقية لدينا مع excel & VBA. تتطلب جميع الوظائف المنطقية إجراء اختبارات منطقية وإرجاع TRUE إذا كان الاختبار المنطقي صحيحًا ، وإذا كان الاختبار المنطقي غير صحيح ، فسيتم إرجاع FALSE كنتيجة.

لكن "VBA NOT" هو عكس الوظيفة المنطقية الأخرى تمامًا. أود أن أقول أن هذه هي الوظيفة العكسية للوظائف المنطقية.

تقوم وظيفة "VBA NOT" بإرجاع "FALSE" إذا كان الاختبار المنطقي صحيحًا وإذا كان الاختبار المنطقي غير صحيح ، فستعيد "TRUE". الآن ، انظر إلى صيغة الدالة "VBA NOT".

NOT (اختبار منطقي)

هذا بسيط للغاية ، نحتاج إلى تقديم الاختبار المنطقي. تقوم الدالة NOT بتقييم الاختبار وإرجاع النتيجة.

أمثلة على دالة NOT & IF في VBA؟

فيما يلي أمثلة لاستخدام دالة IF و NOT في Excel VBA.

يمكنك تنزيل قالب VBA IF NOT Excel هذا هنا - قالب VBA IF NOT Excel

مثال 1

ألق نظرة على الكود أدناه للحصول على مثال.

رمز:

 NOT_ مثال فرعي () Dim k As String k = Not (100 = 100) MsgBox k End Sub 

في الكود أعلاه ، أعلنت أن المتغير هو String.

 خافت ك كسلسلة 

ثم بالنسبة لهذا المتغير ، قمت بتعيين الدالة NOT مع الاختبار المنطقي على أنها 100 = 100.

ك = لا (100 = 100)

ثم قمت بكتابة الكود لإظهار النتيجة في مربع رسالة VBA. MsgBox k

الآن سأنفذ الكود وأرى النتيجة.

حصلنا على النتيجة "خطأ".

الآن ننظر إلى الوراء في الاختبار المنطقي. لقد قدمنا ​​الاختبار المنطقي على أنه 100 = 100 وهو صحيح بشكل عام منذ أن قدمنا ​​الدالة NOT وحصلنا على النتيجة على أنها FALSE. كما قلت ، في البداية ، يعطي نتائج عكسية مقارنة بالوظائف المنطقية الأخرى. بما أن 100 تساوي 100 فقد أعادت النتيجة على أنها FALSE.

المثال رقم 2

الآن ، انظر إلى مثال آخر بأرقام مختلفة.

رمز:

 NOT_ مثال فرعي () Dim k As String k = Not (85 = 148) MsgBox k End Sub 

الكود هو نفس الشيء الوحيد الذي قمت بتغييره هنا هو أنني قمت بتغيير الاختبار المنطقي من 100 = 100 إلى 85 = 148.

الآن سأقوم بتشغيل الكود ومعرفة النتيجة.

هذه المرة حصلنا على النتيجة على أنها TRUE. الآن افحص الاختبار المنطقي.

ك = لا (85 = 148)

نعلم جميعًا أن 85 لا يساوي الرقم 148. نظرًا لأنه لا يساوي ، فقد أعادت الدالة NOT النتيجة على أنها TRUE.

ليس مع شرط إذا:

في Excel أو VBA ، لا تكتمل أي شروط منطقية بدون شرط IF المركب. باستخدام IF في حالة excel ، يمكننا القيام بالكثير من الأشياء التي تتجاوز الصواب الافتراضي أو الخطأ. على سبيل المثال ، في الأمثلة المذكورة أعلاه ، حصلنا على النتائج الافتراضية FALSE & TRUE ، بدلاً من ذلك يمكننا تعديل النتيجة بكلماتنا الخاصة.

انظر إلى الكود أدناه.

رمز:

 Sub NOT_Example2 () رقم خافت 1 كرقم خافت للسلسلة 2 كرقم سلسلة 1 = 100 رقم 2 = 100 إذا لم يكن (Number1 = Number2) ثم MsgBox "رقم 1 لا يساوي الرقم 2" Else MsgBox "الرقم 1 يساوي الرقم 2" End If End Sub 

لقد أعلنت متغيرين.

 رقم خافت 1 كسلسلة ورقم خافت 2 كسلسلة 

بالنسبة لهذين المتغيرين ، قمت بتعيين الأرقام على أنها 100 و 100 على التوالي.

Number1 = 100 & Number2 = 100

ثم بالنسبة لوظيفة NOT ، قمت بإرفاق شرط IF لتغيير القيمة الافتراضية TRUE أو FALSE. إذا كانت نتيجة الدالة NOT تساوي TRUE ، فستكون النتيجة كما يلي.

MsgBox "الرقم 1 لا يساوي الرقم 2"

إذا كانت نتيجة الدالة NOT هي FALSE ، فستكون النتيجة كما يلي.

MsgBox "الرقم 1 يساوي الرقم 2"

الآن سأقوم بتشغيل الكود وأرى ما سيحدث.

لقد حصلنا على النتيجة كـ "الرقم 1 يساوي الرقم 2" ، لذلك أعادت الدالة NOT النتيجة FALSE إلى شرط IF ، لذا أعاد الشرط هذه النتيجة.

على هذا النحو ، يمكننا استخدام شرط IF لإجراء الاختبار العكسي.