# Last - fonction de graphique

Last() renvoie la valeur d'une expression évaluée avec les valeurs de dimension d'un tableau croisé dynamique telles qu'elles figurent dans la dernière colonne du segment de ligne actif du tableau croisé dynamique. Cette fonction renvoie NULL dans tous les types de graphique autres que les tableaux croisés dynamiques.

Note InformationsLe tri sur les valeurs des ordonnées dans les graphiques ou le tri par colonnes d'expressions dans les tableaux n'est pas autorisé lors de l'utilisation de cette fonction de graphique dans l'une des expressions du graphique. Ces options de tri sont donc automatiquement désactivées. Lorsque vous utilisez cette fonction de graphique dans une visualisation ou un tableau, le tri de la visualisation revient à l'entrée triée via cette fonction.

Last([TOTAL] expr [, offset [, count]])

Arguments

| Argument | Description |
| --- | --- |
| expr | Expression ou champ contenant les données à mesurer. |
| offset | Si vous spécifiez un décalage offset n supérieur à 1, l'évaluation de l'expression est déplacée de n colonnes à gauche de la dernière colonne.<br><br>Si vous spécifiez un décalage égal à 0, l'expression est évaluée sur la dernière colonne du segment de ligne actif.<br><br>Si vous spécifiez un décalage négatif, la fonction Last aboutit au même résultat que la fonction First avec le décalage positif correspondant. |
| count | Si vous spécifiez un troisième paramètre count supérieur à 1, la fonction renvoie une plage de valeurs, une pour chacune des colonnes de la table jusqu'à la valeur count, en comptant vers la gauche par rapport à la cellule de départ. |
| TOTAL | Si la table est unidimensionnelle ou si le qualificateur TOTAL est utilisé comme argument, le segment de colonne actif est toujours égal à la colonne entière.<br><br>[Définition de l'étendue d'une agrégation](https://help.qlik.com/fr-FR/sense/May2026/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/define-aggregation-scope.htm) |

Si le tableau croisé dynamique comporte plusieurs dimensions horizontales, le segment de ligne actif inclura uniquement les colonnes contenant les mêmes valeurs que la colonne active dans toutes les lignes de dimension, à l'exception de la ligne affichant la dernière dimension horizontale dans l'ordre de tri inter-champs. L'ordre de tri inter-champs pour les dimensions horizontales des tableaux croisés dynamiques est simplement défini par l'ordre des dimensions de haut en bas..

Exemple : Expressions de graphique

| Exemple | Résultat |
| --- | --- |
| `Last( Sum(Sales ))` | Renvoie la somme des ventes `Sales` de la dernière colonne du segment de ligne actif. |
| `Last( Sum(Sales ), 2)` | Renvoie la somme des ventes `Sales` de la colonne qui se trouve deux colonnes à gauche de la dernière colonne du segment de ligne actif. |
| `Last( Total Sum( Sales ))` | Renvoie la somme totale des ventes `Sales` de la dernière colonne du segment de ligne actif. |
| `RangeAvg (Last(Sum(x),1,5))` | Renvoie une moyenne des résultats de la fonction `sum(x)` évaluée sur les cinq colonnes situées le plus à droite du segment de ligne actif. |

## Exemple - Les bases de Last

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/InterRecordFunctions/last.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`.

* Champs suivants dans la table de données :

  * `Year`

  * `Quarter`

  * `Sales`

Script de chargement

```
Example:
Load * inline [
Year, Quarter, Sales
2023, Q1, 5000
2023, Q2, 4000
2023, Q3, 6000
2023, Q4, 7000
2024, Q1, 4500
2024, Q2, 3250
2024, Q3, 6500
2024, Q4, 7250
];
```

Résultats

Chargez les données et ouvrez une feuille. Créez un tableau croisé dynamique et ajoutez ce champ comme dimension de ligne :

* `Year`

Ajoutez ce champ comme dimension de colonne :

* `Quarter`

Créez les mesures suivantes :

* `=Sum(Sales)`, pour calculer la somme des ventes.

* `=Last(Sum(Sales))`, pour calculer la somme des ventes de la dernière colonne du segment de ligne actif.

Tableau de résultats

| Year | Q1 | Q2 | Q3 | Q4 |  |  |  |  |
| --- | --- | --- | --- | --- | --- | --- | --- | --- |
| Sum(Sales) | Last(Sum(Sales)) | Sum(Sales) | Last(Sum(Sales)) | Sum(Sales) | Last(Sum(Sales)) | Sum(Sales) | Last(Sum(Sales)) |  |
| 2023 | 5000 | 7000 | 4000 | 7000 | 6000 | 7000 | 7000 | 7000 |
| 2024 | 4500 | 7250 | 3250 | 7250 | 6500 | 7250 | 7250 | 7250 |

En examinant les résultats, vous pouvez voir que la fonction `Last` renvoie la somme des valeurs des ventes de la dernière colonne de chaque segment de ligne de chaque trimestre. Par exemple, à `Q1`, la valeur de `Sum(Sales)` pour cette période est `5000`. La valeur de `Last(Sum(Sales)` pour `Q1` est de `7000`, qui est la valeur de `Sum(Sales)` à `Q4`, la valeur de la dernière colonne de la ligne active, `2023`.

## Exemple - Scénario Last

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/InterRecordFunctions/last.htm)

#### Expression de graphique

Vue d'ensemble

Un jeu de données contient des chiffres de ventes de divers produits sur une période de trois mois. L'entreprise souhaite présenter le total des ventes pour la période en cours et la croissance des ventes par rapport aux derniers (ou aux plus récents) chiffres de ventes de la période.

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 :

  * `Date`

  * `Product`

  * `Sales`

Script de chargement

```
Example:
Load * inline [
Date, Product, Sales
2024-01-01, Apple, 100
2024-01-01, Banana, 150
2024-01-01, Carrot, 120
2024-02-01, Carrot, 80
2024-02-01, Banana, 200
2024-02-01, Apple, 110
2024-03-01, Carrot, 160
2024-03-01, Banana, 300
2024-03-01, Apple, 150
];
```

Résultats

Chargez les données et ouvrez une feuille. Créez un tableau croisé dynamique et ajoutez ce champ comme dimension de ligne :

* ` Product
                                       `

Ajoutez ce champ comme dimension de colonne :

* `Date`

Créez les mesures suivantes :

* `=Sum(Sales)`, pour calculer les ventes annuelles.

* `=(Last(Sum(Sales)) - Sum(Sales)) / Sum(Sales)`, pour calculer la croissance des ventes entre la période actuelle et la dernière période. Pour afficher cette valeur sous forme de pourcentage, sous Formatage des nombres, sélectionnez Nombre &gt; Formatage simple &gt; 12,34 %.

Tableau de résultats

| Product | 2024-01-01 | 2024-02-01 | 2024-03-01 |  |  |  |
| --- | --- | --- | --- | --- | --- | --- |
| Sum(Sales) | (Last(Sum(Sales)) - Sum(Sales)) / Sum(Sales) | Sum(Sales) | (Last(Sum(Sales)) - Sum(Sales)) / Sum(Sales) | Sum(Sales) | (Last(Sum(Sales)) - Sum(Sales)) / Sum(Sales) |  |
| Apple | 100 | 50.00% | 110 | 36.36% | 150 | 0.00% |
| Banana | 150 | 100.00% | 200 | 50.00% | 300 | 0.00% |
| Carrot | 120 | 33.33% | 80 | 100.00% | 160 | 0.00% |

Dans cet exemple, vous pouvez voir comment les ventes ont évolué depuis le début de la période de vente jusqu'à la dernière période. Par exemple, au cours de la première période `2024-01-01`, les ventes de `Apple` étaient de `100` par rapport aux derniers chiffres de ventes qui étaient de `150` pour la période `2024-03-01`. Cela indique une augmentation de `50%`.

## Exemple - Utilisation de Last pour calculer l'écart budgétaire

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/InterRecordFunctions/last.htm)

#### Expression de graphique

Vue d'ensemble

Un jeu de données contient les chiffres du budget par trimestre sur une période de deux ans. L'entreprise souhaite présenter le montant total du budget pour chaque trimestre et l'écart entre le montant du budget pour la période en cours et le budget trimestriel moyen pour l'année.

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 :

  * `Year`

  * `Quarter`

  * `Budget`

Script de chargement

```
Example:
Load * inline [
Year, Quarter, Budget
2023, Q1, 1200
2023, Q2, 1100
2023, Q3, 1300
2023, Q4, 1400
2024, Q1, 1550
2024, Q2, 1230
2024, Q3, 1400
2024, Q4, 1600
];
```

Résultats

Chargez les données et ouvrez une feuille. Créez un tableau croisé dynamique et ajoutez ce champ comme dimension de ligne :

* ` Year
                                       `

Ajoutez ce champ comme dimension de colonne :

* `Quarter`

Créez les mesures suivantes :

* `=Sum(Budget)`, pour calculer le budget du trimestre.

* `=Sum(Budget) - RangeAvg(Last(Budget, 1, 4))`, pour calculer l'écart entre le montant `Budget` de la période en cours et le budget trimestriel moyen de l'année.

Tableau de résultats

| Year | Q1 | Q2 | Q3 | Q4 |  |  |  |  |
| --- | --- | --- | --- | --- | --- | --- | --- | --- |
| Sum(Budget) | Sum(Budget) - RangeAvg(Last(Budget, 1, 4)) | Sum(Budget) | Sum(Budget) - RangeAvg(Last(Budget, 1, 4)) | Sum(Budget) | Sum(Budget) - RangeAvg(Last(Budget, 1, 4)) | Sum(Budget) | Sum(Budget) - RangeAvg(Last(Budget, 1, 4)) |  |
| 2023 | 1200 | -50 | 1100 | -150 | 1300 | 50 | 1400 | 150 |
| 2024 | 1550 | 105 | 1230 | -215 | 1400 | -45 | 1600 | 155 |

En utilisant la fonction `Last`, vous pouvez voir comment le montant du budget par trimestre varie par rapport au budget trimestriel moyen. Par exemple, en `2023`, le budget total pour l'année est de `5000` (`1200 + 1100 + 1300 + 1400`), par conséquent, le budget trimestriel moyen est de `1250`. Étant donné que le montant du budget de `Q1` est de `1200`, il est inférieur de `50` au budget trimestriel moyen de `1250`, tandis que l'écart budgétaire de `Q4` est supérieur de `150` au budget trimestriel moyen.