اولا
القاعده If………Then يتم اتخاذ القرارت في البرامج بناءً علي نتيجه الاجابه عن سؤال معين او
نتيجه شرط معين
فمثلا اذا كانت قيمه الشرط هي
"YES" او "True" اذا
يتم تنفيذ مجموعه من الاوامر اما اذا كان ناتج الاجابه هو
"No" او "False" فيتم تنفيذ مجموعه اخري من الاوامر ويمكن
انري ذلك في الشكل التالي :
وتعتبر قاعده
IF من قواعد
الفيجوال بيسك الشرطيه
يوجد لقاعده
If عده اشكال
اولا سنأخذ الشكل البسيط
If……Then……….
هذا الشكل من القاعده يستخدم في حال مثلا اذا تحقق الشرط يتم تنفيذ
الاوامر في حال عدم تحقق سيذهب الي سطر الاوانر الذي يليه ان وجد
مثال :
اذا كان لدينا تكست بوكس وزر امر ونريد اذا وجد رقم 5 في التكست يظهر
الرساله
Hello سيكون الامر كالتالي
- اقتباس :
If Text1.Text="vba4a" Then Msgbox "Hello"
اذا في حال كتابه كلمه
vba4a في
التكست سيتم اظهار الرساله
Hello الان ماذا يحدث اذا لم يتحقق الشرط؟ سيتعدي البرنامج الجمله الشرطيه بما تحتويها نزولا الي ما يليها من اوامر
ان وجد
ماذا اذا تحقق الشرط ويوجد اوامر تليها؟ سيقوم البرنامج بتنفيذ الاوامر في الجمله الشرطيه ثم بعد ذلك تنفيذ ما
يليها من اوامر
اليكم المثال:
سنقوم بالاضافه الي مثالنا السابق سيكون بهذا الشكل :
- اقتباس :
If Text1.Text="vba4a" Then Msgbox "Hello" Msgbox "No Way"
الان قم بتشغيل البرنامج
واكتب كلمه vba4a ماذا تلاحظ؟ ستجد انه سيظهر رساله تحوي
Hello وبعدها رساله
No Way الان قم بكتابه اي شيئ غير vba4a ماذا تلاحظ؟ ستجد ان البرنامج تخطي جمله
IF لعدم
تحقق الشرط واظهر الرساله
No Way ماذا اذا كنا لا نريد في حال عدم تحقق الشرط ان
ينفذ البرنامج ما يليها من اوامر ؟ اذا الان سيتم وضع كلمه
Else لتخطي هذه
المشكله
الان قم بكتابه الاوامر السابقه بالاضافه الي الاتي :
- اقتباس :
If Text1.Text="vba4a" Then Msgbox "Hello" Else Exit Sub
قمنا باضافه الجمله
Else Exit Sub وهذه الجمله تفيد بأنه في حال عدم تحقق الشرط سيتم الخروج من الامر ولن
يتم تنفيذ الاوامر التي تلي الجمله الشرطيه
IF الشكل الثاني من اشكال If - اقتباس :
- If Condition Then
………………….
Statement 1
………………….
Else
………………….
Statement 2
………………….
End IF
نلاحظ في هذا الشكل وجود الكلمه
End
If وهي تفيد بأن الجمله الشرطيه
If انتهت
وهذا الشكل يستخدم في حال اذا توافر الشرط او في عدم توافرة سيقوم
البرنامج بتنفيذ عدد من الاوامر وليس امرا واحد
مثال:
- اقتباس :
- If Text1.Text="vba4a" then
Msgbox "Hello"
Text1.backcolor=VBgreen
Text1.forecolor=VBBlue
Else
Msgbox "No Way"
Text1.backcolor=vbred
Text1.ForeColor=vbwhite
End IF
في الكود السابق نجد انه سيتم تنفيذ 3 اوامر في حال تحقق
الشرط او في حال عدم تحققه
في حاله تحقق الشرط سيتم اظهار رساله بها
Hello ولون خلفيه التكست ستصبح خضراء ولون الكتابه سيكون بالازرق
اما في حاله عدم تحقق الشرط سيظهر رساله
No Wayولون
خلفيه التكست ستصبح حمراء ولون الكتابه سيكون بالابيض
الشكل الثالث لحالات
If الشرطيه
وهو يعتبر الشكل المتعدد الحالات
- اقتباس :
- If Condition 1 then …………………..
Statement 1
………………….
ElseIf Condition 2 Then
………………….
Statement 2
……………………..
Else
…………………….
Statement 3
…………………….
End If
هذا الشكل يستخدم في حاله اذا تواجد عدد من الحلات او الاحتمالات
اري انها غير مفهومه اذا هيا الي المثال لتتضح الالقاعده هذة
مثال :
قم بعمل الكود الاتي
- اقتباس :
- If Text1.Text="vba4a" Then
Msgbox "Hello World"
ElseIf Text1.Text="vb6" Then
Msgbox "I Like Programming"
Else
Msgbox "I Don't Know You."
End if
في هذا المثال اخبرته اذا كان التكست مكتوب فيه كلمه
vba4a اذا سيخرج الرساله
Hello World اذا لم يتحقق هذا الشرط اذا اذهب
الي الشرط الثاني وهو اذا وجد في التكست
vb6 اذا اخرج رساله بها
I Like Programmin بعد ذلك اخبره في حاله عدم تحقق اي من الشروط قم بتنفيذ ما بعد جمله
Else وهو اخراج رساله بها
I Don't Know You مثال بالعاميه: لو انا بعت مثلا احمد يشتري لي جبنه هاقوله ايه هاقوله لو لقيت جبنه بيضه هات لو ملقتش هات جبنه رومي
لو ملقتش ولا جبنه بيضه ولا جبنه رومي ارجع هو ده مجمل القاعدة