מדריך VBS – משפטי תנאי

תנאים

קוד, או קטע קוד יתבצע רק אם תנאי מסויים מתקיים. כדי לטפל במקרים אלו, קיימים התנאים.
ב-VBScript קיימים שני סוגי תנאים:

If... Then... Else
Select Case

If… Then… Else

ניתן לכתוב את התנאי בדרכים הבאות:
כאשר ישנן כמה פקודות לביצוע לאחר התנאי:

If <condition> Then
    'some code
Else
    'some code
End If

כאשר יש רק פקודה אחת לביצוע:

If <condition> Then
    'only one statment
Else
    'only one statment

(אין צורך לסגור תנאי זה ב- End if)
בדוגמא הבאה אנו בודקים האם השעה הנוכחים היא אחרי 12 בצהריים, ובהתאם לכך מציבים ערך במשתנה strTime.
הפונקציה now מחזירה לנו את התאריך והשעה הנוכחיים, והפונקציה hour מחזירה לנו מספר בין 0-23 המייצג את השעה. על הפונקציות הללו נדון בהרחבה בפרק העוסק בפונקציות המובנות של VBScript.

Dim num,strTime
num=10
If Hour(now())<12 Then
    strTime="Morning"    
Else
    strTime="Evening" 

כאשר יש לנו מספר שורות קוד לבצע, חובה לכתוב End If בסוף התנאי:

If num <> 0 Then
    value= value/num
    num = num + 1
Else
    num=1
End If

אם אין לנו שום צורך לכתוב קטע קוד שיתבצע באם התנאי לא מתקיים, ניתן לוותר על ה-Else.

If num <> 0 Then
    value= value/num
    num = num + 1
End If

אם כאשר התנאי שכתבנו ב-If אינו מתקיים, ואנו רוצים ב-Else לבדוק תנאי אחר, נשתמש ב-ElseIf:

If num <> 0 Then
    value= value/num
    num = num + 1
ElseIf num > 10 Then
    num = num / 10 + 1
    value= value/num
Else
    num=1
End If

התנאים במשפט ה-If יכולים להיות גם תנאים מורכבים, כגון:

If (num > 10 And num <=50) Or str="Hello" Then
If (str="Hello" And Num =2) Then

Select Case

מטרת ה-Case הינה לפשט את מבנה התנאי במקרה של מספר תנאים:

Select Case <Variable>
    Case <Value>
    Case <Value> ,<Value>,<Value>
    Case Else
End Select
Select Case Num
    Case 1:
        str="one"
    Case 2:
        str= "two"
    Case 3:
        str = "three"
    Case Else:
        str = "Bigger then three"
End select
Select Case strName
    Case "Moshe":
        str="Father"
    Case "Rona":
        str= "Mother"
    Case "Shay","Dany":
        str = "Brother"
    Case "Michal","Yael":
        str = "Sister"
    Case Else
        str= "Not part of the family"
End select

תגיות: , , , ,

תגובות בפייסבוק