Crystal Reports  

範囲変数(Crystal 構文)

範囲変数は、連続した値を処理するために用意されています。範囲変数は、論理値型を除くすべての単純型で使用できます。つまり、使用できる型は、数値型範囲、通貨型範囲、文字列型範囲、日付型範囲、時刻型範囲、および日時型範囲です。範囲を生成するには、To、_To、To_、_To_、UpTo、UpTo_、UpFrom、および UpFrom_ の各キーワードを使用します。大まかに言うと、To は両端のある範囲に使用し、UpTo と UpFrom は一方の端しかない範囲に使用します。下線は、端点を範囲に入れるかどうかを指示するために使用します。

数値型範囲の値の例

2 以上 5 以下の数値の範囲

2 To 5

2 より大きく 5 以下の数値の範囲

2 _To 5

5 以下の数値

UpTo 5

5 未満の数値

UpTo_ 5

日時型範囲の値の例

#1999/1/5# To #2000/12/12#
UpFrom #Jan 1, 2000#

式で範囲変数を使用する

Crystal Reports には、日付範囲を返す関数が 27 あります。たとえば、LastFullMonth 関数は、前月の 1 日から末日までのすべての日付を含む日付値の範囲を返します。つまり、今日が 1999 年 9 月 15 日である場合、LastFullMonth は、範囲値“CDate(#1999/8/1#)To CDate(#1999/8/31#)”と同じです。

範囲変数は、多くの場合、If または Select 式と共に使用されます。次の例では、試験の点数に基づいて学生の成績を求めています。90 点以上には A が与えられ、80 点以上 90 点未満には B が与えられます。

//学生の成績を求めます
Select {Student.試験の点数}
Case UpFrom 90 :
"A"
Case 80 To_ 90 :
"B"
Case 70 To_ 80 :
"C"
Case 60 To_ 70 :
"D"
Default :
"F";

上の例では、Select 式を使用しています。Select 式については、「制御構造」で詳しく説明しています。ある値が範囲内にあるかどうかは、演算子 In を使って検査できます。例 :

10 In 2 To 5; //真
5 In 2 To_ 5; //偽
5 In 2 To 5; //真

Maximum および Minimum 関数は、範囲の端点を判定するために使用します。

Maximum (2 To 10) //10 を返します

参照

配列データ型 | 単純データ型