式の値に基づいて、実行するステートメントのグループを選択します。
Select Case selectExpr
[ Case condList
[ statements ] ]
[ Case condList
[ statements ] ]
...
[ Case Else
[ statements ] ]
End Select
selectExpr
各 condList 条件の値と比較するための値を表す式です。この式は一度だけ評価されて、その値が比較に繰り返し使用されます。
condList
各 condList は条件のカンマ区切りのリストで、それぞれの条件は、実行する後続ステートメントのグループに対応していなければなりません。次のいずれかの構文になります。この場合、expr は任意の式です。
selectExpr が expr と正確に一致すると TRUE を返します。複数の式を単一の Case で指定するには、カンマで区切ります。
selectExpr がこの範囲内にあると TRUE を返します。範囲は、昇順で指定する必要があります。
例えば、25 To 50 を指定すると、selectExpr が 25 から 50 までの範囲内の値のときに、それに対応するステートメントのグループが実行されます。例えば、-4 To -1 を指定すると、selectExpr が -4 から -1 までの範囲内の値のときに、それに対応するステートメントのグループが実行されます。
selectExpr と expr の比較演算が真のときに TRUE を返します。比較演算子は、= > < <> >< <= =< >= => のいずれかを指定します。
例えば、Is < 37 と指定すると、selectExpr が 37 未満のときに対応するステートメントのグループが実行されます。
statements
関連する condList 内の条件の 1 つが最初に満たされるときに実行されるステートメントです。
selectExpr は、各 condList 内の各条件と対照して比較されます。最初に、condList 内のいずれかの条件が満たされたときに、その condList に対応するステートメントのグループが実行されて、選択処理が終わります。
1 つの statements のグループが実行されるか、どのステートメントも実行されないかのどちらかです。Case Else のステートメントのグループを含めると、selectExpr がすべての condList 引数内のすべての条件に合わなかったときにのみ実行されます。
selectExpr が文字で condList が文字列の範囲である場合、その範囲内の文字列は、Option Compare を使用して指定された有効な照合順序によって異なることに注意してください。バイナリ比較 (Option Compare Binary) が有効なときは、国際 Unicode 文字照合順序が使用されます。これは、値 Uchr(0)、Uchr(1)、Uchr(2)、.... の順序です。どの LotusScript® のプラットフォームでも同じです。ただし、Option Compare の Case、NoCase、Pitch、または NoPitch が有効になっている場合、使用しているオペレーティングシステムによって照合順序は多少異なります。通常はどのような場合でも区切り文字などのあいまいな文字の範囲指定を避けることをお勧めします。保守容易性を高め、プラットフォームに依存しないようにするために、突き合わせる文字を指定します。複数の文字を単一の condList で指定するには、引用符で囲んでカンマで区切ります。以下に例を示します。
Case ":", ">", "<", "?"