מבנה החלטה הוא פקודה המאפשרת לתוכנה לבדוק מצבים מסוימים, ולפעול לפי תוצאת הבדיקה. למשל, בעזרת מבנה החלטה ניתן לשאול את המשתמש שאלות ולקבל ממנו תשובות.
אם התנאי מתקיים, אז המשפטים שבמבנה ההחלטה מתבצעים ולהפך. התחביר של מבני החלטה כאלו הוא:
[משפט תוכנית] Then[תנאי] If
תנאי הוא ביטוי מותנה שאם (If) תוצאתו היא אמת (True) אז משפט התוכנית הבא אחרי המילה אז (Then) מתבצע. לדוגמה:
במשפט דוגמה זה התנאי ,X >=603 או הביטוי המותנה הוא ואם משפט זה מתברר כנכון (שהמשתנה X גדול או שווה ל- 306), אז המשפט שבא אחרי Then מתבצע (מוצב הערך- אמת במאפיין- Caption של האובייקט- Label1).
באפשרותך להוסיף למבנה ההחלטה If...Then משפטים נוספים של החלטה כך שביחד הם יצרו בלוק אחד של מבנה החלטה אשר בודק כמה תנאים ולא רק תנאי אחד. התחביר של בלוק מבנה החלטה מסוג If...Then הוא:
Then [תנאי1] If
[משפטי תוכנית שיבוצעו אם תנאי1 מתקיים]
Then [תנאי2] Else If
[משפטי תכנות שיבוצעו אם תנאי2 מתקיים]
[כאן ניתן להוסיף משפטי החלטה נוספים]
Else
[משפטי תוכנית שיבוצעו אם אף אחד מהתנאים שלמעלה אינו מתקיים]
End If
במבנה החלטה מסוג זה, נבדק תחילה תנאי.1 אם הוא אמת אז מבוצעים משפטי התכנות הבאים אחריו. אם ביטוי זה הוא שקר, אז נבדק תנאי.2 אם משפט זה אמת אז משפטי התוכנית הבאים אחריו מתבצעים. וכך אלאה. אם אף ביטוי מותנה אינו מתקיים (אינו True) אז מבוצעים משפטי התוכנית הבאים אחרי המשפט .Else
שים לב שהסדר של משפטי התנאי הוא חשוב. לדוגמה, אם משפט Else יהיה שני ואחריו יהיו עוד משפטי תנאי, אז המשפטי תנאי הבאים אחר כך לא יתקיימו כי Else יתבצע קודם.
בנוסף למבני החלטה If..Then ישנו
מבנה החלטה נוסף הנקרא .Select Case מבנה החלטה
זה דומה למבנה If..Then, אך הוא יעיל יותר ומסודר
יותר כשההסתעפות מותנית במשתנה אחד, המכונה מקרה בדיקה (test
case).
התחביר הבא הוא של מבנה החלטה מסוג :Select Case
[שם משתנה] Select Case
[ערך1] Case
[משפטי התוכנית שיתקיימו אם ערכו של ערך1 שווה לערכו של המשתנה]
[ערך2] Case
[משפטי התוכנית שיתקיימו אם ערכו של ערך2 שווה לערכו של המשתנה]
[ערך3] Case
[משפטי התוכנית שיתקיימו אם ערכו של ערך3 שווה לערכו של המשתנה]
.
.
Case else
[משפטי התוכנית שיתקיימו אם אף אחד מהמשפטים שלמעלה אינו נכון]
End Select
שם המשתנה שבא אחרי ה Select Case יכול להיות משתנה, מאפיין או ביטוי אחר, שישמש כערך בדיקה של המבנה. את כל הערכים שבסוגריים מרובעים עלייך להחליף בערכים או באופרטורי השוואה היכולים להיות שווים למשתנה.
בזמן ריצת התוכנית המחשב בודק אילו מהערכים מחזיר אמת, ואז הוא מבצע את משפטי התוכנית הבאים אחרי הערך. אם אף ערך לא מחזיר אמת, אז הוא מבצע את מה שכתוב אחרי Case else (אם יש).
מספר ערכים בסעיף Case בודד: בנוסף, ניתן לבדוק יותר מערך אחד בסעיף .Case כדי לעשות זאת עלייך להפריד בין הערכים בעזרת פסיקים (,).
מילת המפתח :Is Is היא מילת מפתח המורה למהדר להשוות בין משתנה הבדיקה, לבין הביטוי המופיע אחרי מילת ה- .Is
מילת המפתח To מילת המפתח To היא מילה שבאפשרותה ניתן להגדיר טווח של ערכים. לדוגמה, ב- 13 to 19 יכנסו כל הערכים שבין 13 ל- .19