RangeSum - fonction de script et fonction de graphique
RangeSum() renvoie la somme d'une plage de valeurs. Toutes les valeurs non numériques sont traitées comme des 0, contrairement aux résultats de l'opérateur +.
RangeSum(first_expr[, Expression])
numérique
L'argument de cette fonction peut contenir des fonctions d'inter-enregistrements, qui renvoient à leur tour une liste de valeurs.
- first_expr : Expression ou champ contenant les données à additionner.
- Expression : Expressions ou champs facultatifs contenant la plage de données à additionner. Il est possible d'utiliser plusieurs expressions supplémentaires.
La fonction RangeSum traite toutes les valeurs non numériques comme des 0, contrairement à l'opérateur +.
Exemple | Résultat |
---|---|
RangeSum (1,2,4) |
Renvoie 7. |
RangeSum (5,'abc') | Renvoie 5. |
RangeSum (null( )) |
Renvoie 0. |
(avec une expression)
RangeSum (Above(MyField,0,3))
Renvoie la somme des trois valeurs de MyField) : à partir de la ligne active et des deux lignes au-dessus. En spécifiant 3 pour le troisième argument, la fonction Above() renvoie trois valeurs, s'il y a suffisamment de lignes au-dessus, utilisées comme données d'entrée dans la fonction RangeSum().
MyField | RangeSum(Above(MyField,0,3)) |
---|---|
10 | 10 |
2 |
12 |
8 | 20 |
18 | 28 |
5 | 31 |
9 | 32 |
Données utilisées dans les exemples :
RangeTab:
LOAD * INLINE [
MyField
10
2
8
18
5
9
] ;
(sous forme de table)
Ajoutez l'exemple de script à votre document et exécutez-le. Ensuite, ajoutez au moins les champs répertoriés dans la colonne des résultats à une feuille de votre document afin de visualiser le résultat.
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
];
La table résultante affiche les valeurs renvoyées par la fonction MyRangeSum pour chaque enregistrement de la table.
RangeID | MyRangeSum |
---|---|
1 | 21 |
2 | 12 |
3 | 18 |
4 | 38 |
5 | 19 |
6 | 15 |