Skip to content
Support formation Rapports Power BI
  • Pages
    • Présentation du support
    • Organisation des formations Power BI
    • Ressources pédagogiques
      • Kit pédagogique
      • Références
      • Mise en pratique
        • Exo 1
        • Exo 2
        • Exo 3
        • Exo 4 Parc Auto
        • Exo 5 Vente data
        • Exo 6 EuroDesk
      • Aide à la décision d'une formation courte Power BI
    • Généralités
      • Carte & schéma Power BI
      • Guide de survie
      • Architecture des données [ToDo]
      • Optimisations & bonnes pratiques
      • Présentation de la solution Power BI
        • Le marché des solutions BI
        • A quoi sert Power BI ?
        • Versions & licences
        • Installation
      • Organiser son projet Power BI
      • Microsoft Fabric [WIP]
      • Planification de l’implémentation de Power BI
      • Planification de la migration et du déploiement Power BI
    • 1 | Se connecter aux données
      • Modes de connexion aux données (résumé)
      • Obtenir les données d’un fichier Excel (SharePoint)
      • Obtenir les données d’un fichier CSV/Texte
      • Obtenir les données d'un classeur Google Sheet
      • Créer un Dataflow (Query dans BI Service)
      • Base de données (Azure SQL Server)
      • Récupérer le contenu d'un fichier Zip
      • Récupérer les fichiers d'un site SharePoint
      • OData
      • Tips - retours d'expériences [WIP]
    • 2 | Transformer ses données (Power Query)
      • icon picker
        Pourquoi transformer ses données ? (dépivoter)
      • Transformations
        • Fusionner des requêtes ("RECHERCHEV")
          • Les 6 types de jointure
        • Ajouter des requêtes
        • Transformations complexes
        • Combiner les feuilles d'un classeur
        • Combiner automatiquement les fichiers d’un dossier
        • Équivalent d'un RECHERCHEV / VRAI
      • Paramètres de la source de données
      • Langage M
        • 1 | Introduction
          • Ressources
        • 2 | Travailler avec Power Query
          • Options [WiP]
        • 3 | Accès et combinaison des données
        • 4 | Valeurs et expressions
        • Fonctions personnalisées
        • Recherche de la valeur précédente
        • Contourner l'erreur Firewall
        • Tips
          • let ... in imbriqués
          • Closures (fermetures) [WiP]
          • Récursivité [ToDo]
      • Transformer avec R [WIP]
      • Transformer avec Python [WIP]
      • Query folding
      • Tips
    • 3 | Modéliser (+ DAX)
      • Propriétés du modèle
      • Modèle de données
        • Relations
        • Schéma en étoile
          • Concepts liés au schéma en étoile
        • Slow Changing Dimension (SCD) [WiP]
      • Composants du modèles
        • Groupes & hiérarchies
        • Groupe de calculs
        • Relations
        • Mesures d'expression de détail des lignes
        • Agrégations manuelles et automatiques
      • DAX (le langage) et Power BI
        • Mesures explicites dans Power BI
        • Exploiter le volet Vue de requête DAX
        • Calculs visuels
        • User-defined functions (UDF)
      • Table de dates
      • Level Security
        • RLS (Row Level Security)
          • RLS partiel [WiP]
        • "Page Level Security" [WiP]
        • OLS (Object Level Security) [WiP]
        • Visuel Level Security
      • Tables recommandées (Type de données dans Excel)
      • Optimisation du modèle
        • Roche's Maxim
        • Réduire la taille du modèle
    • 4 | Présenter et analyser
      • Filtres & tris
        • Paramètres dynamiques
        • Focus Segments
        • L'exploration ("drill")
      • Objets visuels
        • Axes dynamiques
        • Couleurs fixes selon les catégories
        • KPI
        • Jauge
        • Sparkline [WiP]
        • Valeur dynamique des zones de texte
        • Icônes personnalisées
        • Cartes (Map)
        • Mises en forme conditionnelle
        • Jolies tables [WiP]
        • Nouvelles cartes [WiP]
      • Animer le rapport
        • Infos bulles personnalisées
        • Extractions
        • Signets
      • Étendre le rapport
        • Ajouter des visuels
        • Présenter avec R [WIP]
        • Présenter avec Python [WIP]
        • Visuels personnalisés avec Deneb
        • Infographic Designer [WiP]
        • Power Automate dans Power BI
      • Flux de tâches translyticaux [mai 2025]
      • Styles & thèmes
        • Styles prédéfinis
    • 5 | Partager et diffuser
      • Diffuser et partager un rapport Power BI
        • Modèle sémantique comme source de rapport
        • Partager un espace de travail
        • Intégrer Power BI [WiP]
        • bouton_publier
          "Publier" avec Power BI Desktop dans OneDrive/SharePoint
      • Tableaux de bord
      • Créer l'application d'un Espace de travail Power BI
      • Espaces de travail
        • [Admin] Créer un Espace de travail
        • Approbation
        • Application dans un espace de travail
        • Rôles dans un espace de travail
        • Sécurité [ToDo]
        • Alertes dans Power BI
          • Fabric Activator pour Power BI
      • Power BI Server
        • Analysis Services (SSAS)
      • Datamart [beta]
      • Date de dernière actualisation
      • Requête dans Excel vers un modèle Power BI
      • Incorporer des rapports (Embed - API)
    • Développeurs
      • Tabular Editor
      • Mode développeur (Projet Power BI)
      • [Dev] PowerOps : analyser un rapport avec
      • ModeOp express
      • Semantic Labs
    • Echange documents formation
    • logo_copilot
      Copilot
      • ChatGPT
    • Rapports multilangue
    • Préparation PL-300

Pourquoi transformer ses données ? (dépivoter)

Il faut normaliser ses données !

La normalisation consiste à structurer ses données pour les rendre exploitables par un Tableau Croisé Dynamique.
Si vos données source ne sont pas normalisées, Power Query va le faire pour vous. Vous n’aurez pas besoin de modifier vos sources : Power Query appliquera les transformations que vous aurez déterminées, et ce, à chaque mise à jour de la source.

Structure de base

Voici un exemple de structure de données qui n’est pas (ou difficilement) exploitable directement par un Tableau Dynamique Croisé (TCD) :
image.png
Notre TCD donnerait ceci :
image.png
Plusieurs problèmes se présentent ici :
Nous avons fait glisser successivement les champs Janvier, Février et Mars dans la zone Valeurs. C’est long, glisser 1 seul champ aurait été plus rapide !
Quand nous aurons les autres mois de l’année, nous devrons ajouter 9 autres champs. C’est long également ! Et on peut se tromper lors de l’ajout.
Calculer le total de l’année va être compliqué. Possible, mais compliqué !

Bonne structure

Voici les mêmes données, mais normalisées (peu importe ici la méthode utilisée pour réaliser cette normalisation) :
image.png
Et le TCD réalisé à partir de ces données :
image.png
Les avantages sont les suivants :
Nous avons fait glisser le seul champ “Mois’” dans la zone Valeurs, ce qui a créé autant de colonnes que de mois. Pratique !
Quand de nouveaux mois apparaitront dans la source, ils s’afficheront automatiquement à la suite (colonne F...)
Les totaux des mois s’affichent déjà, dans la colonne Total général. Quand de nouveaux mois apparaitrons dans la source, cette colonne sera recalculée automatiquement.

Première leçon à tirer

Une colonne d’une source normalisée contient des données de même nature
Dans notre premier tableau, il y avait 3 colonnes qui contenaient de données de même nature, en l’occurrence les quantités. Dans notre version normalisée, une seule colonne “Qte” contient toutes les quantités.
Finalement, la colonne Mois de notre source normalisée contient aussi des données de même nature.

Ajouter des données en conservant la normalisation

Nous voulons continuer à enrichir notre source de données. Au lieu de créer un autre classeur ou une autre feuille, nous mettons les données de chaque année, nous créons 2 colonnes :
image.png
Mauvaise idée ! Nous retrouvons notre problème du début : chaque nouvelle année entrainera la création d’une nouvelle colonne, donc une nouvelle colonne à faire glisser dans la zone Valeurs de notre TCD. Au lieu de cela, nous créons une colonne Année :
image.png
Nous avons donc 2 fois plus de lignes, (18 pour 2019 et 18 pour 2020). Mais ce n’est pas un problème. Notre colonne “Année” contient logiquement des... années. Et la colonne “Qte” contient toujours des... quantités.
Nous avons ici fait glisser le champ Année dans la zone Filtre du TCD. Nous filtrons sur l’année 2019 :
image.png
Puis sur l’année 2020 :
image.png
Trop facile !

Comment normaliser ses données

2 cas se présentent :
Vos données sources sont déjà normalisées. C’est typiquement le cas d’une source de type Base de données, comme SQL Server, Oracle, MySQL, etc.
Vos données sources ne sont pas normalisées. Ce peut être le cas d’un classeur Excel. Vous pouvez soit modifier vos données sources “à la main”, avec des copier/coller. Vous pouvez aussi ne pas toucher au fichier et utiliser Power Query pour réaliser la transformation.

Normaliser avec Power Query

Voici un exemple de fichier à normaliser :
image.png

Etapes résumés dans Power Query

Lancer Excel (version 2016 et suivante).
Cliquer sur Données > Obtenir des données (ou Nouvelle requête) > A partir d’un fichier > A partir d’un classeur.
Sélectionner le fichier Excel contenant la plage à transformer, ce qui affiche :
image.png
Dans cette fenêtre Navigateur, sélectionner la feuille et cliquer sur Transformer les données (ou Modifier), ce qui affiche :
image.png
Cliquer dans la colonne Année puis clic droit > Remplir > Vers le bas :
image.png
Sélectionner les colonnes Année et Produit, puis clic droit > Dépivoter les autres colonnes :
image.png
Double-cliquer sur l’en-tête Attribut et saisir Mois. Idem pour la colonne Valeur en Qte :
image.png
Nous voulons une colonne de type Date, qui regroupera les mois et années, comme 01/01/2019.
Cliquer sur la colonne Mois (clic sur l’en-tête) puis Année (CTRL + Clic), clic droit > Fusionner. Dans la boite qui s’ouvre, cliquer directement sur OK :
image.png
Cliquer sur l’en-tête de la colonne “Fusionnée” puis Transformer > Date > Analyser :
image.png
Renommer la colonne en DateVente
Les transformations sont terminées ! Renvoyons les données vers Excel : Accueil > Fermer et charger :
image.png
Le résultat est un Tableau normalisé.






Want to print your doc?
This is not the way.
Try clicking the ⋯ next to your doc name or using a keyboard shortcut (
CtrlP
) instead.