وظيفة VBA OR (أمثلة) | كيفية استخدام عامل التشغيل المنطقي OR في VBA؟

أو هي وظيفة منطقية في أي من لغات البرمجة ومماثلة في VBA لدينا وظيفة OR ، حيث إنها وظيفة منطقية ، والنتيجة التي تقدمها هذه الوظيفة إما صحيحة أو خاطئة ، وتستخدم هذه الوظيفة لشرطين أو أكثر معًا وتعطي لنا نتيجة حقيقية عندما يتم إرجاع أي من الشروط صحيحًا.

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

في وظائف Excel المنطقية هي قلب الصيغ التي نستخدمها بشكل يومي. توجد وظائف منطقية لإجراء الاختبار المنطقي وتعطي نتيجة في نوع البيانات المنطقية ، أي إما TRUE أو FALSE. بعض الصيغ المنطقية في Excel هي "IF ، IFERROR في excel ، ISERROR في excel ، AND ، و OR excel function". آمل أن تكون قد استخدمتها كثيرًا كدالة في ورقة العمل. في VBA أيضًا يمكننا استخدامها جميعًا وفي هذه المقالة ، سنشرح لك طرق استخدام وظيفة "VBA OR".

ما هو أول ما يتبادر إلى ذهنك عندما تفكر في كلمة "أو"؟

بعبارات بسيطة "أو" تعني "إما هذا أو ذاك"

باستخدام نفس الفكرة ، تعد OR دالة منطقية تعطي النتيجة على أنها TRUE إذا كان أي من الاختبارات المنطقية TRUE وتعطي FALSE كنتيجة إذا لم يكن أي من الاختبارات المنطقية صحيحًا.

هذا يعمل بالضبط عكس وظيفة VBA AND. ترجع الدالة AND TRUE فقط إذا كانت جميع الشروط المنطقية صحيحة ، وإذا لم يتم استيفاء أي من الشروط ، فسنحصل على FALSE كنتيجة لذلك.

صيغة دالة VBA OR

اسمحوا لي أن أضع إطارًا نحويًا لك لفهم الوظيفة.

[اختبار منطقي] أو [اختبار منطقي] أو [اختبار منطقي]

أولا ، يجب أن نذكر ما هو الاختبار المنطقي ثم نذكر كلمة OR ثم نذكر ما هو الاختبار المنطقي الثاني إذا كنت ترغب في إجراء اختبار منطقي أكثر ، اذكر كلمة OR بعد إجراء اختبار منطقي.

بعيدًا عن جميع الاختبارات المنطقية التي تقوم بها ، إذا كان أي شخص من الاختبارات مقتنعًا أو صحيحًا ، فسنحصل على النتيجة على أنها TRUE إذا لم يكن هناك شيء أو راضٍ ، فستكون النتيجة خطأ.

أمثلة على استخدام دالة OR في VBA

سنعرض لك مثالاً بسيطًا لاستخدام وظيفة OR في VBA.

يمكنك تنزيل قالب VBA أو Excel هنا - قالب VBA أو Excel

لفهم وظيفة VBA المنطقية أو دعني أعطيك مثالاً. لنفترض أننا نريد إجراء الاختبار المنطقي سواء كان الرقم 25 أكبر من 20 أم أن الرقم 50 أقل من 30.

الخطوة 1: قم بإنشاء اسم ماكرو.

الخطوة 2: تحديد المتغير كسلسلة.

رمز:

 Sub OR_Example1 () Dim i As String End Sub 

الخطوة 3: الآن بالنسبة لهذا المتغير ، سنقوم بتعيين القيمة من خلال الاختبار المنطقي OR.

رمز:

 Sub OR_Example1 () Dim i As String i = End Sub 

الخطوة 4: أول اختبار منطقي لدينا هو 25> 20 .

رمز:

 Sub OR_Example1 () Dim i As String i = 25> 20 End Sub 

الخطوة 5: الآن بعد الاختبار المنطقي الأول ، اذكر كلمة OR وأدخل الاختبار المنطقي الثاني.

رمز:

 Sub OR_Example1 () Dim i As String i = 25> 20 أو 50 <30 End Sub 

الخطوة 6: حسنًا ، تختبر وظيفة VBA OR الآن ما إذا كانت الاختبارات المنطقية صحيحة أم خطأ. الآن قم بتعيين نتيجة المتغير إلى مربع رسالة VBA .

رمز:

 Sub OR_Example1 () Dim i As String i = 25> 20 أو 50 <30 MsgBox i End Sub 

الخطوة 7: قم بتشغيل الماكرو وما هي النتيجة.

لقد حصلنا على النتيجة على أنها TRUE لأنه من بين اختبارين منطقيين قدمناهما اختبارًا واحدًا هو TRUE وبالتالي فإن النتيجة هي TRUE.

25 أكبر من 20 و 50 لا تقل عن 30 ، في هذه الحالة ، يكون الاختبار المنطقي الأول صحيحًا ولكن الثاني خطأ. نظرًا لأننا طبقنا وظيفة VBA OR ، فإنها تحتاج إلى أي شرط من الشروط ليكون TRUE للحصول على النتيجة على أنها TRUE.

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

رمز:

 فرعي OR_Example1 () خافت i كسلسلة i = 25 = 20 أو 50 = 30 MsgBox i End Sub 

لقد قمت بتغيير معادلات الاختبار المنطقي من علامة> و <يساوي (=). سيعيد هذا FALSE كنتيجة لأن 25 لا تساوي 20 و 50 لا تساوي 30.

وظيفة VBA OR مع إذا كان الشرط قويًا

كما قلت ، يمكن لـ OR إرجاع إما TRUE أو FALSE كنتيجة ، ولكن مع الوظيفة المنطقية الأخرى "IF" ، يمكننا معالجة النتائج وفقًا لاحتياجاتنا.

قم بإجراء نفس الاختبارات المنطقية أعلاه ، لقد أعاد OR فقط TRUE أو FALSE ولكن دعنا ندمج OR مع IF.

الخطوة 1: قبل إجراء أي اختبار ، افتح الوظيفة IF .

رمز:

 Sub OR_Example2 () Dim i As String IF End Sub 

الخطوة 2: الآن قم بإجراء الاختبارات باستخدام وظيفة OR .

رمز:

 فرعي OR_Example2 () خافت i كسلسلة IF 25 = 20 أو 50 = 30 End Sub 

الخطوة 3: ضع كلمة "إذن" واكتب النتيجة إذا كان الشرط صحيحًا ، قم بتعيين القيمة إلى المتغير على أنه "الشرط مستوفي" .

رمز:

 Sub OR_Example2 () Dim i As String إذا كان 25 = 20 أو 50 = 30 ثم i = "الحالة مستوفاة" End Sub 

الخطوة 4: إذا كان الشرط FALSE ، فنحن بحاجة إلى نتيجة مختلفة ، لذا ضع كلمة "ELSE" وفي السطر التالي ، قم بتعيين القيمة إلى المتغير "ماذا يجب أن تكون النتيجة إذا كان الشرط أو الاختبار المنطقي FALSE".

رمز:

 فرعي OR_Example2 () خافت i كسلسلة إذا كان 25 = 20 أو 50 = 30 ثم i = "الحالة مرضية" Else i = "الحالة غير مرضية" End Sub 

الخطوة 5: قم بإنهاء وظيفة IF بكلمة "End If" .

رمز:

 Sub OR_Example2 () Dim i As String إذا كان 25 = 20 أو 50 = 30 ثم i = "الحالة مرضية" Else i = "الحالة غير مرضية" End If End Sub 

الخطوة 6: قم بتعيين قيمة النتيجة المتغيرة إلى مربع الرسالة .

رمز:

 فرعي OR_Example2 () خافت i كسلسلة إذا كان 25 = 20 أو 50 = 30 ثم i = "الحالة مرضية" Else i = "الحالة غير مرضية" إنهاء إذا MsgBox i End Sub 

قم بتشغيل الماكرو ، إذا كان الاختبار المنطقي صحيحًا ، فسنحصل على النتيجة كـ "الحالة مرضية" وإلا سنحصل على "الحالة غير راضية".

لقد حصلنا على النتيجة كـ "الحالة غير راضية" لأن كلا الاختبارين المنطقيين خاطئان.

الآن سوف أقوم بتغيير الاختبارات المنطقية.

رمز:

 Sub OR_Example2 () Dim i As String إذا كان 25> 20 أو 50 <30 ثم i = "الحالة مرضية" Else i = "الحالة غير مرضية" End If MsgBox i End Sub 

سأقوم بتشغيل الماكرو وأرى ما هي النتيجة.

هكذا ، يمكننا استخدام دالة منطقية واحدة مع دوال منطقية أخرى للوصول إلى النتائج.

حل دراسة الحالة أدناه لتعتاد على الدوال المنطقية.

دراسة حالة لحلها

لدي أسماء الموظفين والإدارات الخاصة بهم.

إذا حاولت ولم تعثر على النتيجة ، فيمكنك الرجوع إلى الكود أدناه لفهم المنطق.

رمز:

 Sub Bonus_Calculation () Dim i As Long For i = 2 To 10 If Cells (i، 2) .Value = "Finance" Or Cells (i، 2) .Value = "IT" then Cells (i، 3) .Value = 5000 خلية أخرى (i، 3) .Value = 1000 End If Next i End Sub 

إذا كان الموظف من "Finance" أو "IT" ، فيجب أن يحصل على المكافأة "5000". بالنسبة لموظفي القسم الآخرين ، تكون المكافأة "1000".

قم بإجراء الاختبار المنطقي وتوصل إلى النتائج.


$config[zx-auto] not found$config[zx-overlay] not found