Time Intelligence dans Power Pivot dans Excel

Les expressions DAX (Data Analysis Expressions) disposent de fonctions 35 spécifiques pour l’agrégation et la comparaison des données dans le temps. Contrairement aux fonctions de date et d’heure du langage DAX, les fonctions Time Intelligence n’ont pas de contenu similaire dans Excel. En effet, les fonctions Time Intelligence fonctionnent avec les données en perpétuelle évolution, en fonction du contexte que vous avez sélectionné dans les tableaux croisés dynamiques et des visualisations Power View.

Pour utiliser des fonctions Time Intelligence, vous devez inclure une table de dates dans votre modèle de données. La table de dates doit inclure une colonne avec une seule ligne chaque jour de chaque année incluse dans vos données. Ce type de colonne est considéré comme une colonne de date (même s’il peut être nommé). De nombreuses fonctions d’aide à la décision requièrent la colonne date pour pouvoir effectuer le calcul en fonction des dates sélectionnées en tant que champs dans un État. Par exemple, si vous avez une mesure qui calcule un solde de fin de trimestre à l’aide de la fonction CLOSINGBALANCEQTR, vous devez faire référence à la colonne de date dans la table de dates pour savoir à quel moment le trimestre démarre et se termine. Pour en savoir plus sur les tables de dates, voir comprendre et créer les tables de dates dans Power pivot dans Excel.

Fonctions

Fonctions qui renvoient une date unique

Dans cette catégorie, les fonctions renvoient une date unique. Le résultat peut alors être utilisé en tant qu’arguments dans d’autres fonctions.

Les deux premières fonctions de cette catégorie renvoient la première ou la dernière date dans le Date_Column du contexte actuel. Cela peut être utile lorsque vous souhaitez rechercher la première ou la dernière date à laquelle vous avez une transaction d’un type particulier. Ces fonctions n’acceptent qu’un seul argument : le nom de la colonne de date dans votre table de dates.

Les deux fonctions suivantes de cette catégorie recherchent la première ou la dernière date (ou toute autre valeur de colonne également) lorsque la valeur d’une expression n’est pas vide. Ce type est le plus souvent utilisé dans les situations telles que l’inventaire, où vous voulez obtenir le dernier montant d’inventaire et que vous ne savez pas quand le dernier stock a été prélevé.

Six fonctions supplémentaires qui renvoient une date unique sont les fonctions qui renvoient la première ou la dernière date d’un mois, d’un trimestre ou d’une année dans le contexte actuel du calcul.

Fonctions qui renvoient une table de dates

Il existe seize fonctions Time Intelligence qui renvoient une table de dates. Le plus souvent, ces fonctions seront utilisées en tant qu’argument SetFilter de la fonction Calculate . Comme pour toutes les fonctions Time Intelligence dans DAX, chaque fonction considère une colonne de date comme l’un de ses arguments.

Les huit premières fonctions de cette catégorie commencent par une colonne de date dans un contexte actuel. Par exemple, si vous utilisez une mesure dans un tableau croisé dynamique, il est possible qu’il y ait un mois ou une année dans les étiquettes de colonne ou de ligne. L’effet net est la colonne date est filtrée pour inclure uniquement les dates du contexte actuel. À partir de ce contexte actuel, ces huit fonctions calculent alors le jour précédent (ou suivant), le mois, le trimestre ou l’année et renvoient ces dates sous la forme d’une table à une seule colonne. Les fonctions « Previous » fonctionnent à partir de la première date du contexte actuel et les fonctions « Next » s’éloignent de la dernière date dans le contexte actuel.

Les quatre fonctions suivantes de cette catégorie sont similaires, mais au lieu de calculer une période précédente (ou suivante), elles calculent l’ensemble de dates de la période qui est « mois à ce jour » (ou de trimestre à la date, ou de l’année à ce jour, ou de la même période de l’année précédente). Ces fonctions effectuent toutes leurs calculs à l’aide de la dernière date dans le contexte actuel. Notez que SAMEPERIODLASTYEAR nécessite que le contexte actuel contienne un ensemble contigu de dates. S’il ne s’agit pas d’un ensemble de dates contigus, SAMEPERIODLASTYEAR renverra une erreur.

Les quatre dernières fonctions de cette catégorie sont un peu plus complexes et sont également un peu plus puissantes. Ces fonctions sont utilisées pour basculer entre l’ensemble de dates figurant dans le contexte actuel et un nouveau jeu de dates.

  • AjDate (Date_Column, Number_of_Intervals, intervalle)

  • DATESBETWEEN (Date_Column, Start_Date, End_Date)

  • DATESINPERIOD (Date_Column, Start_Date, Number_of_Intervals, intervalle)

DATESBETWEEN calcule le jeu de dates entre la date de début et la date de fin spécifiées. Les trois autres fonctions décalent un certain nombre d’intervalles de temps à partir du contexte actuel. L’intervalle peut être jour, mois, trimestre ou année. Ces fonctions permettent de déplacer facilement l’intervalle de temps d’un calcul d’une des manières suivantes :

  • Reculer de deux ans

  • Reculer d’un mois

  • Avancer de trois trimestres

  • Reculer de 14 jours

  • Avancer de 28 jours

Dans les deux cas, vous devez seulement spécifier l’intervalle et le nombre de ces intervalles à décaler. Un intervalle positif va progresser dans le temps, tandis qu’un intervalle négatif sera reculé dans le temps. L’intervalle proprement dit est spécifié par un mot-clé jour, mois, trimestre ou année. Ces mots clés ne sont pas des chaînes et ne doivent donc pas être placés entre guillemets.

Fonctions qui évaluent des expressions sur une période de temps

Cette catégorie de fonctions évalue une expression sur une période donnée. Vous pouvez effectuer la même opération à l’aide de CALCULATE et d’autres fonctions Time Intelligence. Par exemple,

= TOTALMTD (expression, Date_Column [, SetFilter])

est exactement le même que celui-ci :

= CALCULATE (expression ; DATESMTD (Date_Column) [, SetFilter])

Néanmoins, il est plus facile d’utiliser ces fonctions Time Intelligence lorsqu’elles sont adaptées au problème à résoudre :

  • TOTALMTD (Expression, Date_Column [, SetFilter])

  • TOTALQTD (Expression, Date_Column [, SetFilter])

  • TOTALYTD (Expression, Date_Column [, SetFilter] [, YE_Date]) *

Il s’agit également d’un groupe de fonctions qui calculent les soldes d’ouverture et de clôture. Il existe certains concepts que vous devez comprendre avec ces fonctions spécifiques. Tout d’abord, comme cela peut vous sembler évident, le solde d’ouverture de chaque période est le même que le solde de clôture de la période précédente. Le solde de clôture inclut toutes les données jusqu’à la fin de la période, tandis que le solde d’ouverture n’inclut pas les données de la période actuelle.

Ces fonctions renvoient toujours la valeur d’une expression évaluée à un moment précis. Le moment que nous prévoyons est toujours la dernière valeur de date possible dans une période de calendrier. Le solde d’ouverture est en fonction de la dernière date de la période précédente, tandis que le solde de clôture dépend de la dernière date de la période actuelle. La période actuelle est toujours déterminée par la dernière date dans le contexte de date actuel.

Ressources supplémentaires

Articles : comprendre et créer les tables de dates dans Power pivot dans Excel

Référence : référence des fonctions Daxsur Office.com

Exemples : modélisation et analyse des données de résultat avec Microsoft PowerPivot dans Excel

Besoin d’aide ?

Développez vos compétences dans Office
Découvrez des formations
Accédez aux nouvelles fonctionnalités en avant-première
Rejoignez le programme Office Insider

Ces informations vous ont-elles été utiles ?

Nous vous remercions pour vos commentaires.

Merci pour vos commentaires. Il serait vraisemblablement utile pour vous de contacter l’un de nos agents du support Office.

×