# inmonthtodate Fonction de script et de graphique

Renvoie la valeur True si l'argument date se trouve dans la partie du mois comprenant l'argument basedate jusqu'à la dernière milliseconde spécifiée dans basedate.

InMonthToDate (timestamp, base\_date, period\_no)

booléen

Diagramme de la fonction `inmonthtodate`.

Diagramme de la fonction `inmonthtodate`.

Diagramme de la fonction `inmonthtodate`inmonthtodate. ![Diagram showing how inmonthtodate function can be used to identify if a timstamp falls within or outside of a set month.](https://help.qlik.com/fr-FR/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-inmonthtodate-diagram1.png)

La fonction `inmonthtodate()` identifie un mois sélectionné comme segment. La limite de début est le début du mois. La limite de fin peut être définie sur une date ultérieure au cours du mois. Il est ensuite déterminé si un ensemble de dates tombent dans ce segment ou non, renvoyant une valeur booléenne TRUE ou FALSE.

Arguments

| Argument | Description |
| --- | --- |
| timestamp | Date à comparer à base\_date. |
| base\_date | Date utilisée pour évaluer le mois. |
| period\_no | Il est possible de décaler le mois à l'aide de l'argument period\_no. period\_no est un entier, où la valeur 0 indique le mois comprenant l'argument base\_date. Les valeurs négatives spécifiées pour period\_no indiquent les mois passés tandis que les valeurs positives désignent les mois à venir. |

Cas d'utilisation

La fonction `inmonthtodate()` renvoie un résultat booléen. Ce type de fonction est généralement utilisé comme condition dans une `if expression`. La fonction `inmonthtodate()` renvoie une agrégation ou un calcul qui dépend du fait qu'une date s'est produite ou non au cours du mois jusqu'à la date en question incluse.

Par exemple, la fonction `inmonthtodate()` peut être utilisée pour identifier l'ensemble des équipements fabriqués au cours d'un mois jusqu'à une date spécifique.

## Paramètres régionaux

Sauf indication contraire, les exemples de cette rubrique utilisent le format de date suivant : MM/DD/YYYY. Le format de date est indiqué dans l'instruction `SET DateFormat` de votre script de chargement de données. Le format de date par défaut peut être différent dans votre système en raison de vos paramètres régionaux et d'autres facteurs. Vous pouvez modifier les formats utilisés dans les exemples ci-dessous en fonction de vos besoins. Ou vous pouvez modifier les formats utilisés dans votre script de chargement pour qu'ils correspondent à ceux de ces exemples.

Les paramètres régionaux par défaut des applications sont basés sur les paramètres système régionaux de l'ordinateur ou du serveur où Qlik Sense est installé. Si le serveur Qlik Sense auquel vous accédez est configuré sur la Suède, l'éditeur de chargement de données utilisera les paramètres régionaux suédois pour les dates, l'heure et la devise. Ces paramètres de format régionaux ne sont pas liés à la langue affichée dans l'Qlik Sense interface utilisateur. Qlik Sense sera affiché dans la même langue que le navigateur que vous utilisez.

Exemples de fonction

| Exemple | Résultat |
| --- | --- |
| `inmonthtodate ('01/25/2013', '25/01/2013',<br>0)` | Renvoie True |
| `inmonthtodate ('01/25/2013', '24/01/2013',<br>0)` | Renvoie False |
| `inmonthtodate ('01/25/2013', '28/02/2013',<br>-1)` | Renvoie True |

## Exemple 1 – aucun argument supplémentaire

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/inmonthtodate.htm)

#### Script de chargement et résultats

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 contenant un ensemble de transactions pour 2022, chargé dans une table appelée ‘`Transactions`’.

* Champ date fourni dans la variable système `DateFormat` au format (`MM/DD/YYYY`).

* Instruction preceding load contenant les éléments suivants :

  * La fonction `inmonthtodate()` définie comme le champ ‘`in_month_to_date`’. Cela détermine les transactions qui ont eu lieu entre le 1er juillet et le 26 juillet 2022.

Script de chargement

```
SET DateFormat='MM/DD/YYYY'; 
						
Transactions: 
    Load 
    *, 
    inmonthtodate(date,'07/26/2022', 0) as in_month_to_date 
    ; 
Load 
* 
Inline  
[ 
id,date,amount 
8188,'1/19/2022',37.23 
8189,'1/7/2022',17.17 
8190,'2/28/2022',88.27 
8191,'2/5/2022',57.42 
8192,'3/16/2022',53.80 
8193,'4/1/2022',82.06 
8194,'5/7/2022',40.39 
8195,'5/16/2022',87.21 
8196,'6/15/2022',95.93 
8197,'6/26/2022',45.89 
8198,'7/9/2022',36.23 
8199,'7/22/2022',25.66 
8200,'7/23/2022',82.77 
8201,'7/27/2022',69.98 
8202,'8/2/2022',76.11 
8203,'8/8/2022',25.12 
8204,'8/19/2022',46.23 
8205,'9/26/2022',84.21 
8206,'10/14/2022',96.24 
8207,'10/29/2022',67.67 
]; 
```

Résultats

Chargez les données et ouvrez une feuille. Créez une table et ajoutez ces champs comme dimensions :

* `date`
* `in_month_to_date`

Table de résultats

| date | in\_month\_to\_date |
| --- | --- |
| 1/7/2022 | 0 |
| 1/19/2022 | 0 |
| 2/5/2022 | 0 |
| 2/28/2022 | 0 |
| 3/16/2022 | 0 |
| 4/1/2022 | 0 |
| 5/7/2022 | 0 |
| 5/16/2022 | 0 |
| 6/15/2022 | 0 |
| 6/26/2022 | 0 |
| 7/9/2022 | -1 |
| 7/22/2022 | -1 |
| 7/23/2022 | -1 |
| 7/27/2022 | 0 |
| 8/2/2022 | 0 |
| 8/8/2022 | 0 |
| 8/19/2022 | 0 |
| 9/26/2022 | 0 |
| 10/14/2022 | 0 |
| 10/29/2022 | 0 |

Le champ `in_month_to_date` est créé dans l'instruction LOAD précédente via la fonction `inmonthtodate()`.

Le premier argument identifie le champ en cours d'évaluation. Le deuxième argument est une date codée en dur, le 26 juillet, qui est la `base_date`. Cet argument `base_date` identifie le mois segmenté et la limite de fin de ce segment.

Un argument `period_no` égal à `0` constitue l'argument final, ce qui signifie que la fonction ne compare pas les mois précédant ou suivant le mois segmenté.

Diagramme de la fonction `inmonthtodate` sans argument supplémentaire.

Diagramme de la fonction `inmonthtodate` sans argument supplémentaire.

Diagramme de la fonction `inmonthtodate`inmonthtodate sans argument supplémentaire. ![Diagram showing the range of transactions that are identified as TRUE by the inmonthtodate function.](https://help.qlik.com/fr-FR/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-inmonthtodate-example1-diagram.png)

En conséquence, toute transaction qui se produit entre le 1er juillet et le 26 juillet renvoie un résultat booléen TRUE. Toute transaction qui se produit en juillet après le 26 juillet renvoie un résultat booléen FALSE, comme toute transaction de tout autre mois de l'année.

## Exemple 2 – period\_no

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/inmonthtodate.htm)

#### Script de chargement et résultats

Vue d'ensemble

Le même jeu de données et le même scénario que ceux du premier exemple sont utilisés.

Dans cet exemple, la tâche consiste à créer un champ, ‘`six_months_prior`’, qui détermine les transactions qui ont eu lieu un semestre complet avant le 1er juillet et le 26 juillet.

Script de chargement

```
SET DateFormat='MM/DD/YYYY'; 
						
Transactions: 
    Load 
    *, 
    inmonthtodate(date,'07/26/2022', -6) as six_months_prior 
    ; 
Load 
* 
Inline  
[ 
id,date,amount 
8188,'1/19/2022',37.23 
8189,'1/7/2022',17.17 
8190,'2/28/2022',88.27 
8191,'2/5/2022',57.42 
8192,'3/16/2022',53.80 
8193,'4/1/2022',82.06 
8194,'5/7/2022',40.39 
8195,'5/16/2022',87.21 
8196,'6/15/2022',95.93 
8197,'6/26/2022',45.89 
8198,'7/9/2022',36.23 
8199,'7/22/2022',25.66 
8200,'7/23/2022',82.77 
8201,'7/27/2022',69.98 
8202,'8/2/2022',76.11 
8203,'8/8/2022',25.12 
8204,'8/19/2022',46.23 
8205,'9/26/2022',84.21 
8206,'10/14/2022',96.24 
8207,'10/29/2022',67.67 
]; 
```

Résultats

Chargez les données et ouvrez une feuille. Créez une table et ajoutez ces champs comme dimensions :

* `date`

* `six_months_prior`

Table de résultats

| date | six\_months\_prior |
| --- | --- |
| 1/7/2022 | -1 |
| 1/19/2022 | -1 |
| 2/5/2022 | 0 |
| 2/28/2022 | 0 |
| 3/16/2022 | 0 |
| 4/1/2022 | 0 |
| 5/7/2022 | 0 |
| 5/16/2022 | 0 |
| 6/15/2022 | 0 |
| 6/26/2022 | 0 |
| 7/9/2022 | 0 |
| 7/22/2022 | 0 |
| 7/23/2022 | 0 |
| 7/27/2022 | 0 |
| 8/2/2022 | 0 |
| 8/8/2022 | 0 |
| 8/19/2022 | 0 |
| 9/26/2022 | 0 |
| 10/14/2022 | 0 |
| 10/29/2022 | 0 |

Avec l'utilisation de `-6` comme argument `period_no` dans la fonction `inmonthtodate()`, les limites du segment mensuel de comparaison sont décalées de six mois. Initialement, le segment mensuel va du 1er juillet au 26 juillet. L'argument `period_no` décale alors ce segment de six mois négatifs et les limites de dates sont décalées et tombent entre le 1er janvier et le 26 janvier.

Diagramme de la fonction `inmonthtodate` avec l'argument period\_no défini sur -6.

Diagramme de la fonction `inmonthtodate` avec l'argument period\_no défini sur -6.

Diagramme de la fonction `inmonthtodate`inmonthtodate avec l'argument period\_no défini sur -6. ![Diagram showing the range of transactions with the period_no argument set to -6.](https://help.qlik.com/fr-FR/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-inmonthtodate-example2-diagram.png)

En conséquence, toute transaction qui se produit entre le 1er janvier et le 26 janvier renverra un résultat booléen TRUE.

## Exemple 3 - exemple graphique

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/inmonthtodate.htm)

#### Script de chargement et expression de graphique

Vue d'ensemble

Le même jeu de données et le même scénario que ceux du premier exemple sont utilisés.

Dans cet exemple, le jeu de données est le même et chargé dans l'application. La tâche consiste à créer un calcul qui détermine si les transactions ont eu lieu entre le 1er juillet et le 26 juillet sous forme de mesure dans un graphique de l'application.

Script de chargement

```
SET DateFormat='MM/DD/YYYY'; 
						
Transactions: 
Load 
* 
Inline  
[ 
id,date,amount 
8188,'1/19/2022',37.23 
8189,'1/7/2022',17.17 
8190,'2/28/2022',88.27 
8191,'2/5/2022',57.42 
8192,'3/16/2022',53.80 
8193,'4/1/2022',82.06 
8194,'5/7/2022',40.39 
8195,'5/16/2022',87.21 
8196,'6/15/2022',95.93 
8197,'6/26/2022',45.89 
8198,'7/9/2022',36.23 
8199,'7/22/2022',25.66 
8200,'7/23/2022',82.77 
8201,'7/27/2022',69.98 
8202,'8/2/2022',76.11 
8203,'8/8/2022',25.12 
8204,'8/19/2022',46.23 
8205,'9/26/2022',84.21 
8206,'10/14/2022',96.24 
8207,'10/29/2022',67.67 
]; 
```

Résultats

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

`date`

Pour calculer si des transactions ont eu lieu entre le 1er juillet et le 26 juillet, créez la mesure suivante :

`=inmonthtodate(date,'07/26/2022', 0)`

Table de résultats

| date | =inmonthtodate(date,'07/26/2022', 0) |
| --- | --- |
| 1/7/2022 | 0 |
| 1/19/2022 | 0 |
| 2/5/2022 | 0 |
| 2/28/2022 | 0 |
| 3/16/2022 | 0 |
| 4/1/2022 | 0 |
| 5/7/2022 | 0 |
| 5/16/2022 | 0 |
| 6/15/2022 | 0 |
| 6/26/2022 | 0 |
| 7/9/2022 | -1 |
| 7/22/2022 | -1 |
| 7/23/2022 | -1 |
| 7/27/2022 | 0 |
| 8/2/2022 | 0 |
| 8/8/2022 | 0 |
| 8/19/2022 | 0 |
| 9/26/2022 | 0 |
| 10/14/2022 | 0 |
| 10/29/2022 | 0 |

La mesure du champ ‘`in_month_to_date`’ est créée dans le graphique à l'aide de la fonction `inmonthtodate()`.

Le premier argument identifie le champ en cours d'évaluation. Le deuxième argument est une date codée en dur, le 26 juillet, qui est la `base_date`. Cet argument base\_date identifie le mois segmenté et la limite de fin de ce segment. Le dernier argument est un argument `period_no` défini sur 0. Cela signifie que la fonction ne compare pas les mois précédant ou suivant le mois segmenté.

Diagramme de la fonction `inmonthtodate` sans argument supplémentaire.

Diagramme de la fonction `inmonthtodate` sans argument supplémentaire.

Diagramme de la fonction `inmonthtodate`inmonthtodate sans argument supplémentaire. ![Diagram showing the range of transactions with between July 1 and July 26.](https://help.qlik.com/fr-FR/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-inmonthtodate-example3-diagram.png)

En conséquence, toute transaction qui se produit entre le 1er juillet et le 26 juillet renvoie un résultat booléen TRUE. Toute transaction qui se produit en juillet après le 26 juillet renvoie un résultat booléen FALSE, comme toute transaction de tout autre mois de l'année.

## Exemple 4 – scénario

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/inmonthtodate.htm)

#### Script de chargement et résultats

Vue d'ensemble

Dans cet exemple, un jeu de données est chargé dans une table nommée '`Products`'. La table contient les champs suivants :

* ID de produit

* Date de fabrication

* Coût

En raison d'une erreur d'équipement, les produits fabriqués en juillet 2022 étaient défectueux. Le problème a été résolu le 27 juillet 2022.

L'utilisateur final souhaite un graphique qui affiche, par mois, l'état des produits fabriqués 'defective' (défectueux) (valeur booléenne TRUE) ou 'faultless' (corrects) (valeur booléenne FALSE) et le coût des produits fabriqués au cours de ce mois-là.

Script de chargement

```
Products: 
Load 
* 
Inline  
[ 
product_id,manufacture_date,cost_price 
8188,'1/19/2022',37.23 
8189,'1/7/2022',17.17 
8190,'2/28/2022',88.27 
8191,'2/5/2022',57.42 
8192,'3/16/2022',53.80 
8193,'4/1/2022',82.06 
8194,'5/7/2022',40.39 
8195,'5/16/2022',87.21 
8196,'6/15/2022',95.93 
8197,'6/26/2022',45.89 
8198,'7/9/2022',36.23 
8199,'7/22/2022',25.66 
8200,'7/23/2022',82.77
8201,'7/27/2022',69.98 
8202,'8/2/2022',76.11 
8203,'8/8/2022',25.12 
8204,'8/19/2022',46.23 
8205,'9/26/2022',84.21 
8206,'10/14/2022',96.24 
8207,'10/29/2022',67.67 
]; 
```

Résultats

Chargez les données et ouvrez une feuille. Créez une table et ajoutez ces champs comme dimensions :

* `=monthname(manufacture_date)`
* `=if(Inmonthtodate(manufacture_date,makedate(2022,07,26),0),'Defective','Faultless')`

Pour calculer le coût total (sum) des produits, créez la mesure suivante :

`=sum(cost_price)`

Définissez le Formatage des nombres des mesures sur Money (Devise).

Table de résultats

| monthname(manufacture\_date) | if(Inmonthtodate(manufacture\_date,makedate(2022,07,26),0),'Defective','Faultless') | Sum(cost\_price) |
| --- | --- | --- |
| Jan 2022 | Faultless | $54.40 |
| Feb 2022 | Faultless | $145.69 |
| Mar 2022 | Faultless | $53.80 |
| Apr 2022 | Faultless | $82.06 |
| Mai 2022 | Faultless | $127.60 |
| Jun 2022 | Faultless | $141.82 |
| Jul 2022 | Defective | $144.66 |
| Jul 2022 | Faultless | $69.98 |
| Aug 2022 | Faultless | $147.46 |
| Sep 2022 | Faultless | $84.21 |
| Oct 2022 | Faultless | $163.91 |

La fonction `inmonthtodate()` renvoie une valeur booléenne lors de l'évaluation des dates de fabrication de chacun des produits.

Pour les dates qui renvoient une valeur booléenne TRUE, le produit est identifié comme ‘Defective’ (défectueux). Tout produit renvoyant une valeur FALSE, et par conséquent non fabriqué au cours du mois jusqu'au 26 juillet inclus, est identifié comme ‘Faultless’ (correct).