# Num Fonction de script et de graphique

Num() formate un nombre, c'est-à-dire qu'il convertit la valeur numérique de l'entrée pour afficher un texte au format spécifié dans le deuxième paramètre. En cas d'omission du deuxième paramètre, il utilise les séparateurs de décimaux et de milliers définis dans le script de chargement de données. Les symboles personnalisés de séparateur décimal et séparateur des milliers sont des paramètres facultatifs.

Syntaxe :

Num(number[, format[, dec\_sep [, thou\_sep]]])

Type de données renvoyé : double

La fonction Num renvoie une valeur double comportant à la fois la chaîne et la valeur numérique. La fonction prend la valeur numérique de l'expression entrée et génère une chaîne représentant le nombre.

Arguments

| Argument | Description |
| --- | --- |
| number | Chaîne de texte à évaluer. |
| format | Chaîne spécifiant la façon dont la chaîne résultante doit être formatée. En cas d'omission, les séparateurs de décimaux et de milliers définis dans le script de chargement de données sont utilisés.<br><br>La fonction `Num` supporte de nombreuses options de format pour différentes structures numériques, par exemple :<br><br>`#,##0` : ​affiche un nombre sans décimales.<br><br>`#,##0.00` : ​affiche un nombre avec deux décimales.<br><br>`##0.00%` : ​affiche un nombre sous forme de pourcentage avec deux décimales.<br><br>`​#,##0;(#,##0)` : formate les valeurs négatives de sorte qu'elles apparaissent entre parenthèses.<br><br>`$#,##0.00` : formate les nombres sous forme de devise avec un symbole $.<br><br>`​0.00E+0` : affiche les nombres en notation scientifique. |
| dec\_sep | Chaîne indiquant le séparateur de nombres décimaux. En cas d'omission, la valeur de la variable DecimalSep définie dans le script de chargement de données est utilisée.<br><br>La fonction `Num` supporte de nombreux formats de séparateurs de nombres décimaux, par exemple :<br><br>Virgule ​« `,` » : par exemple, `$1,000,00` pour mille dollars.<br><br>Point « `.` » :​ par exemple, `€ 1,000.00`.<br><br>Trait d'union « `-` » : lorsqu'il est utilisé à la place du point ou de la virgule traditionnel(le) comme séparateur décimal, il affiche des valeurs telles que `¥1,000-00`.<br><br>​Pour plus d'informations, consultez [DecimalSep](https://help.qlik.com/fr-FR/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/NumberInterpretationVariables/DecimalSep.htm). |
| thou\_sep | Chaîne indiquant le séparateur de milliers. En cas d'omission, la valeur de la variable ThousandSep définie dans le script de chargement de données est utilisée.<br><br>La fonction `Num` supporte de nombreuses options pour le séparateur des milliers :<br><br>Point ​« `.` » : utilise un point comme séparateur des milliers (courant dans certains formats européens), pour un affichage au format `$1.000,00` s'il est combiné avec un séparateur décimal de type virgule.<br><br>Espace ​« » : utilise un espace comme séparateur des milliers, ce qui est courant dans certains pays européens. Affiche la valeur au format `€ 1 000.00`.<br><br>Trait de soulignement ​« `_` » :​ utilise un trait de soulignement comme séparateur des milliers, ce qui est parfois utilisé dans des formats techniques ou régionaux spécifiques. Affiche des valeurs telles que `$1_000.00`.<br><br>​Pour plus d'informations, consultez [ThousandSep](https://help.qlik.com/fr-FR/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/NumberInterpretationVariables/ThousandSep.htm). |

Pour plus d'informations sur le formatage des nombres, voir [Conventions relatives aux formats de nombre et d'heure](https://help.qlik.com/fr-FR/cloud-services/Subsystems/Hub/Content/Sense_Hub/Introduction/conventions-number-time-formats.htm).

Exemple : Expressions de graphique

| Exemple | Résultats (valeur de chaîne renvoyée) |
| --- | --- |
| `Num(35648.312)` | Renvoie `35648.312` (dépend des variables d'environnement du script) |
| `Num(35648.312, '0.0', '.')` | Renvoie `35648.3`. |
| `Num(35648.312, '0,00', ',')` | Renvoie `3,56,48`. |
| `Num(35648.312, '#,##0.0', '.', ',')` | Renvoie `35,648.3`. |
| `Num(35648.312, '# ##0', ',', ' ')` | Renvoie `35 648`. |

## Exemple - Les bases de Num

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/FormattingFunctions/Num.htm)

#### Expression de graphique

Vue d'ensemble

Ouvrez l'éditeur de chargement de données et ajoutez le script de chargement ci-dessous à une nouvelle section.

Le script de chargement contient :

* Jeu de données chargé dans une table de données appelée `Example`.

* Champ suivant dans une table de données :

  * `InputValue`

Script de chargement

```
Example:
Load * inline [
InputValue
35648
3564800
356.48
];
```

Résultats

Chargez les données et ouvrez une feuille. Créez une table et ajoutez ce champ comme dimension :

* ` InputValue
                                       `

Créez les mesures suivantes :

* `=Num(InputDate)`, pour afficher la valeur sous forme de nombre formaté via les paramètres système.

* `=Num(InputValue, '0.0', '.')`, pour afficher la valeur sous forme de nombre formaté selon le format fourni dans la fonction.

* `=Num(InputValue, '0,00', ',')`, pour afficher la valeur sous forme de nombre formaté selon le format fourni dans la fonction.

* `=Num(InputValue, '#,##0.0', '.', ',')`, pour afficher la valeur sous forme de nombre formaté selon le format fourni dans la fonction.

* `=Num(InputValue, '# ##0', ',', ' ')`, pour afficher la valeur sous forme de nombre formaté selon le format fourni dans la fonction.

Results table

| InputValue | Num(InputDate) | Num(InputValue, '0.0', '.') | Num(InputValue, '0,00', ',') | Num(InputValue, '#,##0.0', '.', ',') | Num(InputValue, '# ##0', ',', ' ') |
| --- | --- | --- | --- | --- | --- |
| 356.48 | 356.48 | 356.5 | 3,56 | 356.5 | 356 |
| 35648 | 35648 | 35648.0 | 3,56,48 | 35,648.0 | 35 648 |
| 3564800 | 3564800 | 3564800.0 | 3,56,48,00 | 3,564,800.0 | 3 564 800 |

Les résultats montrent comment la fonction `Num` peut afficher les valeurs du champ `InputValue` en fonction du format fourni dans l'expression de la fonction.

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/FormattingFunctions/Num.htm)

#### Script de chargement

La fonction `Num` peut être utilisée dans un script de chargement afin de formater un nombre, même si le séparateur des milliers et le séparateur décimal sont déjà définis dans le script. Le script de chargement ci-dessous comprend un séparateur décimal et un séparateur de milliers spécifiques, mais utilise cependant `Num` pour formater les données de différentes façons.

Script de chargement

Dans Éditeur de chargement de données, créez une section, puis ajoutez et exécutez l'exemple de script. Ensuite, ajoutez au moins les champs répertoriés dans la table des résultats à une feuille de votre application afin de visualiser le résultat.

```
SET ThousandSep=',';
SET DecimalSep='.';
Transactions:
Load
*,
Num(transaction_amount) as [No formatting],
Num(transaction_amount,'0') as [0],
Num(transaction_amount,'#,##0') as [#,##0],
Num(transaction_amount,'# ###,00') as [# ###,00],
Num(transaction_amount,'# ###,00',',',' ') as [# ###,00 , ',' , ' '],
Num(transaction_amount,'#,###.00','.',',') as [#,###.00 , '.' , ','],
Num(transaction_amount,'$#,###.00') as [$#,###.00],
;
Load * Inline [
transaction_id, transaction_date, transaction_amount, transaction_quantity, discount, customer_id, size, color_code
3750, 20180830, 12423.56, 23, 0,2038593, L, Red
3751, 20180907, 5356.31, 6, 0.1, 203521, m, orange
3752, 20180916, 15.75, 1, 0.22, 5646471, S, blue
3753, 20180922, 1251, 7, 0, 3036491, l, Black
3754, 20180922, 21484.21, 1356, 75, 049681, xs, Red
3756, 20180922, -59.18, 2, 0.333333333333333, 2038593, M, Blue
3757, 20180923, 3177.4, 21, .14, 203521, XL, Black
];
```

Résultats

Table Qlik SenseQlik Sense affichant les résultats de différentes utilisations de la fonction NumNum dans le script de chargement. À titre d'exemple, la quatrième colonne de la table contient un formatage incorrect.

| No formatting | 0 | #,##0 | # ###,00 | # ###,00 , ',' , ' ' | #,###.00 , '.' , ',' | $#,###.00 |
| --- | --- | --- | --- | --- | --- | --- |
| -59.18 | -59 | -59 | -59###,00 | -59,18 | -59.18 | $-59,18 |
| 15.75 | 16 | 16 | 16###,00 | 15,75 | 15.75 | $15,75 |
| 1251 | 1251 | 1,251 | 1251###,00 | 1 251,00 | 1,251.00 | $1,251.00 |
| 3177.4 | 3177 | 3,177 | 3177###,00 | 3 177,40 | 3,177.40 | $3,177.40 |
| 5356.31 | 5356 | 5,356 | 5356###,00 | 5 356,31 | 5,356.31 | $5,356.31 |
| 12423.56 | 12424 | 12,424 | 12424###,00 | 12 423,56 | 12,423.56 | $12,423.56 |
| 21484.21 | 21484 | 21,484 | 21484###,00 | 21 484,21 | 21,484.21 | $21,484.21 |

## Exemple - Scénario Num

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/FormattingFunctions/Num.htm)

#### Expression de graphique

Vue d'ensemble

Un jeu de données contient des données de ventes que vous souhaitez présenter dans un format numérique plus simple.

Ouvrez l'éditeur de chargement de données et ajoutez le script de chargement ci-dessous à une nouvelle section.

Le script de chargement contient :

* Jeu de données chargé dans une table de données appelée `Example`.

* Champs suivants dans la table de données :

  * `Customer`
  * `Sales`

Script de chargement

```
Example:
Load * inline [
Customer, Sales
Customer A, 2550000
Customer B, 12500
Customer C, 15000
Customer D, 250
];
```

Résultats

Chargez les données et ouvrez une feuille. Créez une table et ajoutez ce champ comme dimension :

* ` Customer
                                       `

Créez la mesure suivante :

* `=If(Sales > 1000000, Num(Sales/1000000, '#,##0.00M'), If(Sales > 1000, Num(Sales/1000, '#,##0.00K'), Num(Sales, '#,##0.00')))`, pour définir la représentation numérique des valeurs.

Results table

| Customer | If(Sales &gt; 1000000, Num(Sales/1000000, '#,##0.00M'), If(Sales &gt; 1000, Num(Sales/1000, '#,##0.00K'), Num(Sales, '#,##0.00'))) |
| --- | --- |
| Customer A | 2.55M |
| Customer B | 12.50K |
| Customer C | 15.00K |
| Customer D | 250.00 |

L'expression de la mesure dans la colonne 2 utilise la fonction `Num` pour présenter les données dans un format numérique simplifié.

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/FormattingFunctions/Num.htm)

#### Script de chargement

La fonction `Num` peut être utilisée dans un script de chargement afin de formater un nombre sous forme de pourcentage.

Script de chargement

Dans l'éditeur de chargement de données, créez une section, puis ajoutez et exécutez l'exemple de script. Ensuite, ajoutez les champs répertoriés dans la colonne des résultats à une feuille de votre application afin de visualiser le résultat.

```
SET ThousandSep=',';
SET DecimalSep='.';
Transactions:
Load
*,
Num(discount,'#,##0%') as [Discount #,##0%]
;
Load * Inline [
transaction_id, transaction_date, transaction_amount, transaction_quantity, discount, customer_id, size, color_code
3750, 20180830, 12423.56, 23, 0,2038593, L, Red
3751, 20180907, 5356.31, 6, 0.1, 203521, m, orange
3752, 20180916, 15.75, 1, 0.22, 5646471, S, blue
3753, 20180922, 1251, 7, 0, 3036491, l, Black
3754, 20180922, 21484.21, 1356, 75, 049681, xs, Red
3756, 20180922, -59.18, 2, 0.333333333333333, 2038593, M, Blue
3757, 20180923, 3177.4, 21, .14, 203521, XL, Black
];
```

Table Qlik SenseQlik Sense affichant les résultats de la fonction `Num`Num utilisée dans le script de chargement en vue de formater les pourcentages.

| Discount | Discount #,##0% |
| --- | --- |
| 0 | 0% |
| 0.1 | 10% |
| 0.22 | 22% |
| 0 | 0% |
| 75 | 7,500% |
| 0.333333333333333 | 33% |
| .14 | 14% |