Excel: Comprendre en quoi consiste une relation entre deux tables

Publié le 28 avril 2014
par Sophie Marchand M.Sc., CPA, CGA, MVP
Tables liées

Excel: Comprendre en quoi consiste une relation entre deux tables

Nous avons déjà souligné sur ce blogue, tous les avantages pour les usagers d’Excel, d’utiliser PowerPivot pour creér des solutions BI (Business Intelligence) autonomes. Mais pour tirer profit des nombreuses possibilités offertes par PowerPivot, il faut maîtriser quelques concepts de base au niveau de la modélisation de données. Notamment, il faut bien comprendre comment concevoir un modèle de données efficace en liant entre elles différentes tables de données. Un des modèles les plus répandus, est certainement le shéma en étoile, qui propose de placer la table de faits (mesures) au centre et les tables de dimensions, tout autour. Mais avant de parler de modèles de données, parlons d’abord de ce qu’il faut savoir concernant les relations entre les tables de données dans Excel.

Relations entre tables de données

Créer une relation entre deux ou plusieurs tables

D’abord, rappelons qu’il est possible, grâce à PowerPivot, d’importer des données provenant de différentes source (Excel, Access, Texte, Web, SQL server, Oracle, etc.) et de concevoir un modèle de données pour fins d’analyse financière, de reporting ou de tableau de bord, en liant ces tables de données à l’aide de clés communes. Il est possible de créer ces relations directement à partir de PowerPivot ou, dans Excel 2013, directement à partir d’Excel. Pour voir comment créer ces relations à partir d’Excel, je vous invite à lire l’article suivant: Excel: Créer un modèle de données.

 

Voici comment se définit une relation entre deux tables:

Table source: Table de données à partir de laquelle on veut créer une relation. Dans notre exemple, il s’agit de la table des ventes internet (FactInternetSales). Cette table source contient souvent des données transactionnnelles et dans cette table, on retrouvera normalement plusieurs doublons dans la colonne servant à créer la relation.

Colonne externe: Colonne dans la table de données source qui contient les valeurs à rechercher dans l’autre table. Si on liait les tables entre elles à l’aide d’un Recherchev (Vlookup), il s’agirait du premier paramètre du Recherchev (Vlookup).

Table liée: Table comprenant les données recherchées. Si on liait les tables entre elles à l’aide d’un Rercherchev (Vlookup), il s’agirait du deuxième paramètre du Recherchev.

Colonne associée principale: Colonne dans la table liée, qui contient les données recherchées. Si on liait les tables entre elles à l’aide d’un Recherchev (Vlookup), il s’agirait du troisième paramètre du Recherchev.

 

Le diagramme ci-bas, montre bien la relation qui part de la table source “FactInternetSales” jusqu’à la table liée “DimCustomer”. La clé commune entre les deux tables est la colonne intitulée “CustomerKey”, dans les deux tables (à noter que ces deux colonnes auraient pu porter des noms différents, pour autant que leurs données correspondent).

Tables liées

 

Tableau croisé dynamique sur des tables liées

Puisque nous avons lié les deux tables de données entre elles, nous pouvons maintenant produire des tableaux croisés dynamiques à l’aide des données croisées des deux tables. Par exemple, ci-bas, nous présentons les ventes par niveau de revenus des clients. Les ventes sont dans la table de faits (FactInternetSales), alors que les niveaux de revenus sont des précisions par rapport aux clients, comprises dans la table de données clients (DimCustomer).

 

TCD sur tables liées

 

Pourquoi ne pas lier les tables avec un Recherchev (Vlookup)?

Il existe plusieurs raisons pour lesquelles on choisirait d’utiliser un modèles de données (tables liées via PowerPivot) plutôt que la fonction Recherchev (Vlookup) pour lier des tables entre elles.

  • Pour lier des tables de données avec plus de 1 million de lignes (limite de capacité d’Excel)
  • Pour éviter de calculer plusieurs fois la même information via la fonction Recherchev (Vlookup)
    • Permet d’augmenter l’efficacité de traitement (temps de traitement)
    • Permet d’optimiser l’espace de storage
  • Pour avoir accès à des fonctions DAX avancées afin de créer des mesures plus riches dans nos analyses de données croisées
  • Pour lier plus facilement des tables de données provenant de diverses sources de données
  • Pour avoir accès à toutes les colonnes de données d’une table liée (autrement accessibles via de multiples Recherchev (Vlookup))
  • Pour avoir accès à des données d’une table secondaire (liée à une table liée), qui serait autrement accessible via de multiples Recherchev (Vlookup)

 

CFO-Masque_Formations-en-ligne_FB Le CFO masqué offre un vaste choix de formations en informatique décisionnelle avec Excel et Power BI, via un portail en ligne et à distance en temps réel, selon un calendrier. Si vous désirez organiser des formations privées, faites nous simplement parvenir un courriel à info@lecfomasque.com . Des certificats convenant aux normes de formation continue des divers ordres professionnels du Québec sont offerts pour l'ensemble des formations.  

Découvrez quelles formations vous conviennent

 

5 réflexions sur “Excel: Comprendre en quoi consiste une relation entre deux tables”

  1. Bonjour,
    Sauf erreur de ma part, vos exemples reprennent toujours des modèles avec une seule table de faits. Est-il envisageable de créer des modèles avec plusieurs tables de faits. Par exemple en industrie, une table des volumes produits, une autre des arrêts de production (pannes) et encore une autre avec les effectifs?
    Dans ce cas on se retrouve avec des relations plusieurs à plusieurs, le schéma en étoile peut-il se faire avec la table de dimension date au centre?
    Merci d’avance pour votre réponse.
    Bien cordialement

    1. Bonjour,

      Le modèle en étoiles (avec une seule table de faits au centre) est l’idéal pour Power Pivot et Power BI. Toutefois, il est possible de lier plus d’une table de faits, à l’aide de tables de dimensions communes.

      Dans Power BI, l’opération est assez simple. Toutefois, dans Power Pivot, vous aurez sans doute à créer de nouvelles mesures à l’aide du truc expliqué dans l’article suivant: https://www.lecfomasque.com/les-relations-many-to-many-dans-power-pivot-et-power-bi-designer/.

      Si vous avez un exemple précis de tables que vous souhaitez lier ensemble, je vous invite à partager votre fichier dans notre forum: https://www.lecfomasque.com/forum/.

      Au plaisir,

      Sophie

  2. Ping : Temp2 | Pearltrees

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Scroll to Top