Previous Topic

Next Topic

Select Case statement

Executes one of several groups of statements, depending on the value of an expression.

Select Case testexpression
  [Case expressionlist-n
    [statements-n]]...
  [Case Else
    [elsestatements-n]]
End Select

The Select Case Statement has the following named arguments:

Argument

Description

testexpression

Required. A numeric, date or string expression.

expressionlist-n

Required if Case appears. This can be in any of the following forms:

  • expression
  • expression1, expression2, expression-n
  • expression1 To expression2
  • Is comparisonoperator expression

You can use a comma delimited list of one or more expressions.

Use the To keyword to specify a range of values.

Use the Is keyword with a comparison operator (=, <>, <, <=, > or >=) to specify a restriction on the expression.

statements-n

One or more statements executed if testexpression matches any part of expressionlist-n.

elsestatements-n

One or more statements executed if testexpression doesn't match any of the Case clauses.

Remarks

If testexpression matches any Case expressionlist expression, the statements following that Case clause are executed up to the next Case clause, or for the last clause, up to End Select. Control then passes to the statement following End Select. If testexpression matches an expressionlist expression in more than one Case clause, only the statements following the first match are executed.

The Case Else clause is used to indicate the elsestatements to be executed if no match is found between the testexpression and an expressionlist in any of the other Case selections. Although not required, it is a good idea to have a Case Else statement in the Select Case block to handle unforeseen testexpression values. If no Case expressionlist matches testexpression and there is no Case Else statement, execution continues at the statement following End Select.

Select Case statements can be nested. Each nested Select Case statement must have a matching End Select statement.

See Also

MaxBasic Statements

Book Contents

Book Index