# RangeSum スクリプトおよびチャート関数

RangeSum() は値の範囲の合計を返します。数値以外の値はすべて 0 として扱われます。

構文:

RangeSum(first\_expr[, Expression])

戻り値データ型： 数値

引数：

この関数の引数には、値のリストをそれ自体の中で返すレコード間関数が含まれます。

引数

| 引数 | 説明 |
| --- | --- |
| first\_expr | メジャーの対象となるデータが含まれている数式または項目。 |
| Expression | メジャーの対象となるデータ範囲が含まれている任意の数式または項目。 |

制限事項:

RangeSum 関数は数値以外の値をすべて 0 として扱います。

例と結果:

例

| 例 | 結果 |
| --- | --- |
| `RangeSum<br>(1,2,4)` | 7 を返します |
| `RangeSum<br>(5,'abc')` | 5 を返します |
| `RangeSum<br>(null( ))` | 0 を返します |

アプリケーションにスクリプト例を追加して実行します。結果を表示するには、結果列に含まれている項目をアプリケーションのシートに追加します。

`RangeTab3:` `LOAD recno() as RangeID, Rangesum(Field1,Field2,Field3) as MyRangeSum INLINE [` `Field1, Field2, Field3` `10,5,6` `2,3,7` `8,2,8` `18,11,9` `5,5,9` `9,4,2`

`];`

結果テーブルには、テーブルの各レコードに対する MyRangeSum の戻り値が表示されます。

結果のテーブル

| RangeID | MyRangeSum |
| --- | --- |
| 1 | 21 |
| 2 | 12 |
| 3 | 18 |
| 4 | 38 |
| 5 | 19 |
| 6 | 15 |

数式を用いた例:

`RangeSum (Above(MyField,0,3))`

現在の行とその上の 2 つの行から MyField) 関数の 3 つの値の合計が返されます。3 番目の引数に 3 を指定すると、Above() 関数は、上に十分な行のある場所に 3 つの値を返し、RangeSum() 関数への入力として取得されます。

例で使用されているデータ:

ヒント メモこのような場合、集計エラーを防ぐため MyField によるソートは無効にしておきます。

サンプル データ

| MyField | RangeSum(Above(MyField,0,3)) |
| --- | --- |
| 10 | 10 |
| 2 | 12 |
| 8 | 20 |
| 18 | 28 |
| 5 | 31 |
| 9 | 32 |

例で使用されているデータ:

`RangeTab:``LOAD * INLINE [``MyField``10``2``8``18``5``9``] ;`

## 詳細を見る

* [Sum - チャート関数](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/BasicAggregationFunctions/sum.htm)
* [Above - チャート関数](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/InterRecordFunctions/above.htm)