Office
Se connecter

Recherches dans les formules Power Pivot

Remarque :  Nous faisons de notre mieux pour vous fournir le contenu d’aide le plus récent aussi rapidement que possible dans votre langue. 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 indiquer en bas de page si ces informations vous ont aidé ? Voici l’article en anglais à des fins de référence aisée.

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 connexes. Vous pouvez récupérer les valeurs associées à partir des tables en utilisant le langage de formule fourni avec Power Pivot, Data Analysis Expressions (DAX). Le langage DAX utilise un modèle relationnel et permet, par conséquent, de récupérer facilement et précisément des valeurs associées ou correspondantes dans une autre table ou colonne. Si vous connaissez la fonction RECHERCHEV dans Excel, cette fonctionnalité dans Power Pivot est similaire, mais beaucoup plus facile à implémenter.

Vous pouvez créer des formules qui effectuer des recherches dans le cadre d’une colonne calculée, ou dans le cadre d’une mesure à utiliser dans un tableau croisé dynamique ou 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, avec quelques exemples sur la façon d'utiliser ces 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.

Fonctionnement des fonctions de recherche

La possibilité de rechercher des données connexes ou correspondantes dans une autre table est particulièrement utile dans les situations où la table actuelle comporte uniquement un identificateur d'un certain genre, mais que les données dont vous avez besoin (telles que le prix du produit, le nom ou toute autre valeur détaillée) sont stockées dans une table associée. Elle est également utile lorsque plusieurs lignes d'une autre table sont associées à la ligne ou 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 VLOOKUP, qui sont basées sur des tableaux, ou LOOKUP qui obtient la première des différentes valeurs correspondantes, DAX suit les relations qui existent entre les tables jointes par clés afin d'obtenir la valeur associée unique qui correspond exactement. DAX peut également récupérer une table d'enregistrements associé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 retourne une valeur unique à partir d'une autre table qui est associée à la valeur actuelle dans 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 récupérer la valeur de la colonne spécifiée dans la table associée. Dans certains cas, la fonction doit suivre une chaîne de relations pour récupérer les données.

Supposons par exemple que vous ayez une liste des livraisons du jour dans Excel. Cette liste ne contient toutefois que l'ID d'employé, l'ID de commande et l'ID d'expéditeur, ce qui rend le rapport difficile à lire. Pour obtenir les informations supplémentaires de votre choix, vous pouvez convertir cette liste en table liée Power Pivot, puis créer des relations avec les tables Employee et Reseller, en faisant correspondre EmployeeID au 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('Employees'[EmployeeName])
= RELATED('Resellers'[CompanyName])

Transferts d’aujourd'hui avant la recherche

OrderID

EmployeeID

ResellerID

100314

230

445

100315

15

445

100316

76

108

Table employés

EmployeeID

Employé

Revendeur

230

Kuppa Vamsi

Modular Cycle Systems

15

Pilar Ackeman

Modular Cycle Systems

76

Kim Ralls

Associated Bikes

Transferts d’aujourd'hui avec recherches

OrderID

EmployeeID

ResellerID

Employé

Revendeur

100314

230

445

Kuppa Vamsi

Modular Cycle Systems

100315

15

445

Pilar Ackeman

Modular Cycle Systems

100316

76

108

Kim Ralls

Associated Bikes

La fonction utilise les relations entre la table liée et de la table employés et aux revendeurs pour obtenir le nom correct pour chaque ligne dans le rapport. Vous pouvez également utiliser les valeurs lié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 voulez déterminer le nombre de commandes chaque revendeur a placé cette année. Vous pouvez créer une nouvelle colonne calculée dans la table revendeurs qui inclut la formule suivante, qui recherche des enregistrements pour chaque revendeur dans la table ResellerSales_USD et compte le nombre de commandes individuels passées par chaque revendeur. Ces tableaux font partie de l’exemple de classeur DAX. Pour plus d’informations sur les exemples de données, consultez obtenir des exemples de données pour les didacticiels de modèle de données et DAX.

=COUNTROWS(RELATEDTABLE(ResellerSales_USD))

Dans cette formule, la fonction RELATEDTABLE obtient d'abord la valeur ResellerKey pour chaque revendeur de la table active. (Vous n'avez pas besoin de spécifier la colonne d'ID dans la formule puisque Power Pivot utilise la relation existante entre les tables). La fonction RELATEDTABLE obtient ensuite toutes les lignes de la table ResellerSales_USD associées à chaque revendeur et compte les lignes. S'il n'existe aucune relation (directe ou indirecte) entre les deux tables, vous obtenez toutes les lignes de la table ResellerSales_USD.

Pour le revendeur Modular Cycle Systems dans notre exemple de base de données, il y a quatre commandes dans la table des ventes ; la fonction retourne donc 4. Pour Associated Bikes, le revendeur n'a aucune vente ; la fonction retourne donc une valeur vide.

Revendeur

Enregistrements de la table sales pour ce revendeur

Modular Cycle Systems

Reseller ID

SalesOrderNumber

445

SO53494

445

SO71872

445

SO65233

445

SO59000

Reseller ID

SalesOrderNumber

Associated Bikes

Remarque : Étant donné que la fonction RELATEDTABLE retourne une table, pas une valeur unique, il doit être utilisé comme argument d’une fonction qui effectue les opérations sur les tables. Pour plus d’informations, voir Fonction RELATEDTABLE.

Haut de la Page

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.

×