# Keyword Reference

Switch...Case...EndSwitch

Conditionally run statements.

Switch <expression>
Case <value> [To <value>] [,<value> [To <value>] ...]
statement1
...
[Case <value> [To <value>] [,<value> [To <value>] ...]
statement2
...]
[Case Else
statementN
...]
EndSwitch

Parameters

<expression> | An expression that returns a value. This value is then compared against the values of each case until a match is found.
<value> To <value> | The case is executed if the expression is between the two values.
<value> | The case is executed if the expression matches the value.

Remarks

If no cases match the Switch value, then the Case Else section, if present, is executed. If no cases match and Case Else is not defined, then none of the code inside the Switch structure will be executed.
Switch statements may be nested.

Related

If...Then, If...Else...EndIf, Select...EndSelect, ContinueCase

Example

Switch @HOUR
Case 6 To 11
$msg = "Good Morning"
Case 12 To 17
$msg = "Good Afternoon"
Case 18 To 21
$msg = "Good Evening"
Case Else
$msg = "What are you still doing up?"
EndSwitch
MsgBox(0, Default, $msg)