Power BI · Cours interactif
Séance 2 · Sources fiables

Une donnée juste, avant une donnée jolie

La séance 1 corrigeait la forme des exports. Celle-ci s'attaque au fond : une même valeur saisie de quatre façons, une ligne comptée deux fois, un texte dans une colonne de nombres. Ces défauts ne se voient pas dans un graphique — ils le rendent simplement faux. Puis on apprend à rassembler : plusieurs fichiers en un, deux tables par une clé.

⏱️ 1 h 45 🎚️ Opérationnel 📁 retours · modèle 🎯 27 exercices corrigés
Ta progression
0% 0 / 7 modules
Quelle licence as-tu ?
Le cours n'affiche que ton chemin, et retient ton choix. Tu ne sais pas ? La séance 1 te montre où la lire.

Les fichiers de la séance : datashop-retours-a-nettoyer.xlsx (modules 0 à 2), et datashop-modele.xlsx (modules 3 et 4), le classeur complet de Datashop que tu garderas jusqu'à la fin du parcours.

0

Profiler avant de nettoyer

Trois cases à cocher qui montrent ce que l'œil ne voit pas
✓ Terminé›

Les magasins saisissent leurs retours à la main. Le fichier Saisie_retours a l'air propre : il ne l'est pas. Avant de corriger quoi que ce soit, on mesure.

  1. Importe Saisie_retours par Transformer les données.
  2. Onglet Afficher, flèche de Vue de données : Afficher les détails de la qualité des colonnes, Afficher la distribution des valeurs de colonne, Activer le profil de colonne.
  3. En bas de la fenêtre, clique sur Profilage de colonne basé sur les 1000 premières lignes et choisis l'ensemble du jeu de données.
OutilCe qu'il montreCe qu'il révèle ici
Qualité de la colonne% de valeurs valides, en erreur, videsUne erreur dans Quantité, une fois le type fixé
DistributionNombre de valeurs distinctes et uniquesMotif a 14 valeurs distinctes pour 7 motifs réels
Profil de colonneStatistiques et histogramme de la colonne choisieLes variantes « colis endommagé », « Colis endomagé »…

Le piège des 1000 lignes. Par défaut, le profil ne regarde que les 1000 premières lignes. Sur les 2 140 lignes de commande de Datashop, une erreur en ligne 1 500 est invisible — et la barre affiche fièrement « 100 % valide ».

🏋️ À toi de jouer — dans Power BI
1

Uniformiser une saisie

Une valeur, une seule écriture
✓ Terminé›

Pour Power BI, Colis endommagé, colis endommagé, Colis endommagé   (avec des espaces à la fin) et Colis endomagé sont quatre motifs différents. Le graphique des retours les affichera sur quatre barres, et le motif n° 1 perdra des voix.

  1. Sélectionne Motif, puis Transformer › Format › Supprimer les espaces : les espaces en début et en fin disparaissent.
  2. Clic droit sur la colonne › Remplacer les valeurs : colis endommagé par Colis endommagé. Recommence pour chaque variante restante — le remplacement respecte la casse.
  3. Relis la distribution : il doit rester 7 valeurs distinctes.

Pourquoi pas « Mettre en majuscule chaque mot » ? Elle écrirait Ne Correspond Pas À L'attente : uniforme, mais faux. Un nettoyage réussi rend la donnée juste, pas seulement homogène. Sur de gros volumes, les fusions approximatives rapprochent automatiquement les écritures voisines — à réserver aux cas où l'on ne peut pas lister les variantes.

Demande · Julie Weber, responsable du service client

« Quel est vraiment notre motif de retour n° 1 ? »

Julie prépare une réunion avec le transporteur et veut des chiffres incontestables : combien de motifs différents, et combien de retours pour chacun.

🔍 Analyse. Le premier motif ne parle pas du produit mais du transport. Qui, chez Datashop, doit recevoir ce chiffre : les acheteurs, ou la logistique ? Compare aussi avec le décompte avant nettoyage : de combien le premier motif était-il sous-estimé ?
Voir la solution
  1. Supprimer les espaces, puis remplacer les 4 variantes (3 en minuscules, 1 coquille).
  2. Regrouper par Motif, nombre de lignes — après la suppression du doublon (module 2).
À trouver : 14 écritures pour 7 motifs réels. Colis endommagé 11 (26,2 % des 42 retours), Erreur de référence 9, Produit défectueux 7, Ne correspond pas à l'attente 5, Rétractation 14 jours 4, Délai de livraison trop long 3, Doublon de commande 3. Sans nettoyage, « Colis endommagé » n'en comptait que 10.
🏋️ À toi de jouer — dans Power BI
2

Doublons et erreurs

La ligne comptée deux fois, la valeur qui refuse son type
✓ Terminé›

Le doublon

Le retour RET-0017 a été saisi deux fois. Chaque retour a un numéro unique : c'est donc sur cette colonne qu'on cherche les doublons.

  1. Sélectionne N_Retour, puis Accueil › Supprimer les lignes › Supprimer les doublons.

Sur quelle colonne ? Supprimer les doublons sur Motif garderait un seul retour par motif : 7 lignes au lieu de 42. La commande regarde les colonnes sélectionnées : sélectionne la clé, rien d'autre.

L'erreur de type

Une quantité a été saisie 7 pièces. Au passage en nombre entier, la cellule devient Error.

  1. Avant l'étape de type, Remplacer les valeurs : 7 pièces par 7.
  2. Passe ensuite Quantité en nombre entier : la barre de qualité doit afficher 100 % valide.

Remplacer les erreurs par 0 ? C'est tentant, et presque toujours faux : on efface une information réelle (7 articles retournés) en la maquillant. Pour voir les lignes en erreur avant de décider, clic droit sur la requête › Conserver les erreurs, dans une requête dupliquée.

Demande · Contrôle de gestion

« Combien nous coûtent les retours, et quelle part vient du transport ? »

Le contrôleur veut le montant total remboursé sur les deux ans, et la part des colis endommagés.

🔍 Analyse. Calcule le total avant et après suppression du doublon : l'écart est petit, mais c'est exactement le genre d'écart qui fait perdre la confiance d'un directeur financier quand il le découvre lui-même. Et un quart des remboursements pour un problème de carton : la conclusion est-elle pour les acheteurs ou pour le transporteur ?
Voir la solution
À trouver : 7 838,90 € avec le doublon, 7 815,10 € sans. Colis endommagés : 2 100,10 €, soit 26,9 % des remboursements.
🏋️ À toi de jouer — dans Power BI
3

Fusionner deux tables

Aller chercher une colonne dans une autre table, par une clé
✓ Terminé›

La table Lignes_commande connaît la référence et la quantité vendues, pas le coût d'achat. Celui-ci est dans Produits. La clé commune : Référence.

  1. Importe Lignes_commande et Produits depuis datashop-modele.xlsx.
  2. Sur Lignes_commande : Accueil › Combiner › Fusionner des requêtes.
  3. Clique Référence dans la table du haut, Référence dans Produits. Type de jointure : externe gauche.
  4. Une colonne Produits apparaît : clique sur ses deux flèches et ne coche que Catégorie et Coût_achat_HT.
  5. Ajouter une colonne › Colonne personnalisée : Coût = [Quantité] * [Coût_achat_HT].
JointureGardeUsage chez Datashop
Externe gaucheToutes les lignes de gauche, et ce qui correspond à droiteLe cas courant : aucune vente ne doit disparaître
InterneSeulement les lignes qui correspondent des deux côtésDangereux : une référence mal saisie ferait disparaître sa vente
Anti gaucheLes lignes de gauche sans correspondanceLe contrôle : quelles ventes n'ont pas de produit connu ?

Fusionner ou relier ? La fusion recopie les colonnes dans la table : pratique pour un calcul ligne à ligne, mais elle alourdit le modèle. Dès la séance 3, on préférera le plus souvent une relation entre les deux tables, qui ne recopie rien.

Demande · Camille Roy, directrice générale

« Combien avons-nous payé ce que nous avons vendu ? »

Ajoute le coût d'achat à chaque ligne, écarte les lignes des commandes annulées (fusionne aussi Commandes pour récupérer le Statut), puis calcule le coût d'achat total des produits vendus.

🔍 Analyse. Commence par une fusion anti gauche : si elle renvoie des lignes, des ventes n'ont pas de produit connu, et tout calcul de marge sera faux. Ici, elle doit renvoyer 0 ligne — note-le dans ton rapport : un contrôle qui ne trouve rien est un résultat.
Voir la solution
  1. Fusion Lignes_commande ← Produits sur Référence (externe gauche), puis ← Commandes sur N_Commande pour le statut.
  2. Filtre Statut ≠ « Annulée » : il reste 2 067 lignes sur 2 140.
À trouver : anti gauche : 0 ligne. Coût d'achat des produits vendus : 236 840,00 €, pour 435 184,05 € de ventes de produits.
🏋️ À toi de jouer — dans Power BI
4

Dates et délais

Extraire l'année et le mois, mesurer une durée
✓ Terminé›

Une date contient plusieurs informations : l'année, le trimestre, le mois, le jour de la semaine. Power Query les extrait sans formule, et calcule l'écart entre deux dates.

  1. Dans Commandes, sélectionne Date, puis Ajouter une colonne › Date › Année › Année. Même chose pour Mois › Nom du mois et Mois › Mois (le numéro).
  2. Pour le délai : sélectionne d'abord Date_livraison, puis Date (Ctrl+clic), et Ajouter une colonne › Date › Soustraire des jours.
  3. Renomme la colonne Délai (jours). Les commandes sans date de livraison (annulées, en préparation) donnent null : c'est juste, elles n'ont pas de délai.

L'ordre de sélection fait le signe. Sélectionner Date en premier donne des délais négatifs. Le mois en toutes lettres, lui, se trie par ordre alphabétique (août avant janvier) : garde toujours le numéro du mois à côté — la séance 3 s'en servira pour trier.

Demande · Logistique

« L'Express tient-il sa promesse ? »

Le client paie plus cher la livraison Express. Calcule le délai moyen de livraison par mode de livraison, sur toutes les commandes qui ont une date de livraison.

🔍 Analyse. Compare l'Express au Standard. Que peut dire un client qui a payé l'Express ? Rapproche ce constat du motif n° 1 des retours (module 1) : la logistique apparaît pour la deuxième fois. Deux indices convergents, c'est le début d'une recommandation.
Voir la solution
  1. Délai = Date_livraison − Date, puis Regrouper par Mode_livraison, opération Moyenne.
À trouver : Express 3,5 jours, Standard 3,6 jours, Point relais 3,4 jours, Retrait magasin 3,6 jours, Retrait immédiat 0 jour. L'Express ne fait gagner qu'un dixième de jour sur le Standard — et reste plus lent que le point relais.
🏋️ À toi de jouer — dans Power BI
5

Les autres sources

Bases de données, pages web, et ce qu'on a le droit de charger
✓ Terminé›

Dans une vraie entreprise, les commandes ne sont pas dans un classeur mais dans une base de données. Power BI s'y connecte de la même façon.

SourceCommandeCe qu'il faut savoir
Base SQL ServerObtenir les données › SQL ServerNom du serveur, nom de la base, et des droits en lecture
Page webObtenir les données › WebPower BI détecte les tableaux de la page
Dossier SharePointObtenir les données › Dossier SharePointLa solution des équipes qui déposent des fichiers
Fichier CSVObtenir les données › Texte/CSVVérifier le séparateur et l'encodage (UTF-8)
Flux de données Licence ProDans un espace de travail d'équipe du serviceUne préparation Power Query faite une fois, réutilisée par plusieurs modèles. Culture générale : ce cours s'en passe, la licence gratuite n'y donne pas accès.

Importer ou interroger en direct

  • Import : les données sont copiées dans le modèle. Rapide, toutes les fonctions disponibles, mais il faut actualiser.
  • DirectQuery : chaque visuel interroge la base en direct. Toujours à jour, plus lent, et certaines transformations deviennent impossibles.

Ne charge que ce dont tu as besoin. Le classeur datashop-modele.xlsx ne contient ni e-mail, ni téléphone, ni adresse des clients : une analyse des ventes n'en a pas besoin. C'est le principe de minimisation du RGPD — une donnée personnelle chargée dans un rapport partagé est une donnée personnelle exposée. Dans Power Query, Choisir les colonnes dès la première étape.

✓

Quiz de fin de séance

Six questions pour vérifier que c'est acquis
✓ Terminé›

Six situations de fiabilité, sans revenir en arrière.

Tes données sont propres. La séance 3 les relie : au lieu de fusionner les tables, on construit un modèle où chaque table garde sa place.

STOP exercices. Tu as lu tout l'onglet et répondu à ses questions : arrête-toi ici, ne passe pas encore à l'onglet suivant. En cours, ton intervenant montre l'essentiel sur son écran, puis vous refaites ensemble :

  1. Dates, doublons, annulées — atelier 1 : dates réelles, plus de doublon ni d'annulée
  2. Rendre la table, et le dépôt — atelier 1 : les huit étapes faites, déposé, mail envoyé

Tu travailles seul ? Fais ces exercices maintenant, sur ta requête de atelier-pbi-1-caisse.xlsx (page Ateliers), puis passe à l'onglet suivant.