Recherches dans les formules Power Pivot

L’une des fonctionnalités les plus puissantes de Power Pivot est la possibilité de créer des relations entre les tables, puis d’utiliser les tables associées pour rechercher ou filtrer des données associées. Vous récupérez des valeurs liées de tables à l’aide du langage de formule fourni parPower Pivot, DAX (Data Analysis Expressions). DAX utilise un modèle relationnel et peut par conséquent extraire facilement et précisément les valeurs associées ou correspondantes d’une autre table ou colonne. Si vous connaissez la fonction RECHERCHEV dans Excel, cette fonctionnalité est similaire dans Power Pivot, mais bien plus facile à implémenter.

Vous pouvez créer des formules qui effectuent des recherches dans le cadre d’une colonne calculée ou dans le cadre d’une mesure pour une utilisation dans un tableau croisé dynamique ou un graphique croisé dynamique. Pour plus d’informations, voir les rubriques suivantes :

Champs calculés dans Power Pivot

Colonnes calculées dans Power Pivot

Cette section décrit les fonctions DAX fournies pour la recherche, ainsi que quelques exemples illustrant comment utiliser les fonctions.

Remarque : Selon le type d’opération de recherche ou de formule de recherche que vous souhaitez utiliser, vous devrez peut-être d’abord créer une relation entre les tables.

Présentation des fonctions de recherche

La possibilité de rechercher des données correspondantes ou liées à partir d’une autre table est particulièrement utile dans les situations dans lesquelles la table actuelle ne comporte qu’un seul identificateur, mais les données dont vous avez besoin (par exemple, prix du produit, nom ou autres valeurs détaillées) sont stockées dans une table liée. Il est également utile lorsque plusieurs lignes d’une table sont associées à la ligne actuelle ou à la valeur actuelle. Par exemple, vous pouvez facilement récupérer toutes les ventes liées à une région, un magasin ou un vendeur particulier.

Contrairement aux fonctions de recherche Excel telles que RECHERCHEV, qui sont basées sur des tableaux, ou liste de choix, qui obtient la première des multiples valeurs correspondantes, DAX suit les relations existantes entre les tables jointes par les clés pour obtenir la valeur associée unique qui correspond exactement. DAX peut également récupérer une table d’enregistrements liés à l’enregistrement actif.

Remarque : Si vous connaissez les bases de données relationnelles, vous pouvez vous représenter les recherches dans Power Pivot comme une instruction de sous-sélection imbriquée dans Transact-SQL.

Récupération d’une valeur associée unique

La fonction RELATed renvoie une valeur unique d’une autre table liée à la valeur actuelle de la table actuelle. Vous spécifiez la colonne qui contient les données que vous souhaitez, et la fonction suit les relations existantes entre les tables pour extraire la valeur de la colonne spécifiée dans la table liée. Dans certains cas, la fonction doit suivre une chaîne de relations pour extraire les données.

Par exemple, supposons que vous disposiez de la liste des expéditions actuelles dans Excel. Toutefois, la liste contient uniquement un numéro d’identification d’employé, un numéro de commande et un numéro d’IDENTIFIant de l’expéditeur, ce qui rend le rapport difficile à lire. Pour obtenir les informations supplémentaires dont vous avez besoin, vous pouvez convertir cette liste en tableau Power Pivot lié, puis créer des relations entre les tables des employés et des revendeurs, correspondant aux EmployeeID du champ EmployeeKey et ResellerID au champ ResellerKey.

Pour afficher les informations de recherche dans votre table liée, vous devez ajouter deux nouvelles colonnes calculées, avec les formules suivantes :

= RELATed ('employés' [EmployeeName]
) = RELATed ('revendeurs' [nom_société])

Expéditions actuelles avant la recherche

OrderID

Champ Réf employé

ResellerID

100314

230

445

100315

15

445

100316

76

108

Table Employees

Champ Réf employé

Personnel

Revendeur

230

Kuppa Vamsi

Systèmes de cycle modulaire

15

Pilar Ackeman

Systèmes de cycle modulaire

76

Kim Ralls

Vélos associés

Expéditions actuelles avec recherches

OrderID

Champ Réf employé

ResellerID

Personnel

Revendeur

100314

230

445

Kuppa Vamsi

Systèmes de cycle modulaire

100315

15

445

Pilar Ackeman

Systèmes de cycle modulaire

100316

76

108

Kim Ralls

Vélos associés

La fonction utilise les relations entre la table liée et la table Employees et Resellers pour obtenir le nom correct de chaque ligne du rapport. Vous pouvez également utiliser des valeurs associées pour les calculs. Pour plus d’informations et d’exemples, voir fonction related.

Récupération d’une liste de valeurs associées

La fonction RELATEDTABLE suit une relation existante et retourne une table qui contient toutes les lignes correspondantes de la table spécifiée. Par exemple, supposons que vous vouliez connaître le nombre de commandes passées par le revendeur cette année. Vous pouvez créer une colonne calculée dans la table Resellers qui inclut la formule suivante qui recherche les enregistrements de chaque revendeur dans la table ResellerSales_USD, et compte le nombre de commandes passées par chaque revendeur de votre choix. 

= COUNTROWS (RELATEDTABLE (ResellerSales_USD))

Dans cette formule, la fonction RELATEDTABLE obtient d’abord la valeur de ResellerKey pour chaque revendeur de la table actuelle. (Vous n’avez pas besoin de spécifier la colonne ID n’importe où dans la formule, car Power Pivot utilise la relation existante entre les tables.) La fonction RELATEDTABLE récupère ensuite toutes les lignes de la table ResellerSales_USD qui sont associées à chaque revendeur et compte les lignes. S’il n’existe aucune relation (directe ou indirecte) entre les deux tables, vous obtiendrez toutes les lignes de la table ResellerSales_USD.

Pour les systèmes de cycle modulaire Reseller de la base de données exemple, il existe quatre commandes dans la table Sales, donc la fonction retourne 4. S’il s’agit de vélos associées, le revendeur n’a pas de ventes, de sorte que la fonction renvoie une valeur vide.

Revendeur

Enregistrements dans la table des ventes pour ce revendeur

Systèmes de cycle modulaire

Réf revendeur

SalesOrderNumber

445

SO53494

445

SO71872

445

SO65233

445

SO59000

Réf revendeur

SalesOrderNumber

Vélos associés

Remarque : Dans la mesure où la fonction RELATEDTABLE renvoie une table, et non une valeur unique, elle doit être utilisée en tant qu’argument pour une fonction qui effectue des opérations sur les tables. Pour plus d’informations, reportez-vous à la fonction RELATEDTABLE.

Haut de page

Remarque :  Cette page a été traduite automatiquement et peut donc contenir des erreurs grammaticales ou des imprécisions. Notre objectif est de faire en sorte que ce contenu vous soit utile. Pouvez vous nous dire si les informations vous ont été utiles ? Voici l’article en anglais pour référence.

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.

×