Les données arrivent sales
Trois fichiers, trois formats, et un total faux de 31 %. Power Query, et les premières mesures.
Le chiffre qui ne tombe pas juste
Au module 1, Baraka Energy vous avait envoyé un fichier propre. Ce n'était pas la réalité, c'était une politesse.
Aujourd'hui, la vraie chose. Trois fichiers, trois formats, envoyés par trois personnes différentes :
Chargez-les tels quels, additionnez, et votre tableau de bord vous annonce :
Vous venez de surestimer le chiffre d'affaires de 195 189 dollars, soit 31 %. Et rien à l'écran ne vous l'aurait dit. Le graphique était beau, les couleurs correctes, le tri impeccable.
C'est ce module qui vous évite de présenter ce chiffre-là à une direction.
Le plan d'aujourd'hui
| 1 | Se connecter : six sources, une seule logique | 10 min |
| 2 | Power Query : l'atelier où rien n'est définitif | 10 min |
| 3 | Nettoyer les trois fichiers, une saleté à la fois | 30 min |
| 4 | Les faire écrire par Claude, et relire | 10 min |
| 5 | Premières mesures DAX : colonne ou mesure ? | 15 min |
| 6 | Le total tombe juste | 5 min |
Livrable : le tableau de bord du module 1, refait sur des données propres, et dont le total est vérifiable.
Se connecter : six sources, une seule logique
Accueil → Obtenir les données. La liste est longue et elle fait peur. Elle ne devrait pas : toutes ces connexions donnent la même chose — une table dans Power Query. Ce qui change, c'est la porte d'entrée.
| Source | Quand | À savoir |
|---|---|---|
| Classeur Excel | un fichier qu'on vous envoie | choisissez la feuille, pas le tableau nommé, sauf s'il existe |
| Texte/CSV | un export de logiciel | c'est là que le séparateur et l'encodage se règlent |
| Dossier | douze fichiers mensuels identiques | le plus utile et le moins connu — voir module 3 |
| Web | une page ou une API | fonctionne, mais casse quand la page change |
| Base de données | SQL Server, PostgreSQL, MySQL | demandez un accès en lecture seule |
| SharePoint / OneDrive | le fichier partagé de l'équipe | se réactualise dans le service sans passerelle |
💡 La question à poser avant de se connecter : « ce fichier, est-ce que je vais le recevoir encore le mois prochain, au même endroit et dans le même format ? » Si oui, connectez-vous au dossier ou à la source, pas au fichier. Si non, peu importe.
Power Query : l'atelier où rien n'est définitif
Obtenir les données → choisissez le fichier → Transformer les données (et non Charger). Vous entrez dans Power Query.
C'est un atelier séparé, et il obéit à une règle qui change tout :
Le volet Étapes appliquées, à droite, est la liste de ce que vous avez fait. Vous pouvez remonter, supprimer une étape du milieu, la renommer.
💡 Renommez vos étapes. « Type modifié », « Type modifié1 », « Type modifié2 » ne veut rien dire dans trois mois. « Dates au format français » si.
Et surtout : votre fichier d'origine n'est jamais touché. Power Query enregistre une recette, pas un résultat. Le mois prochain, on remplace le fichier, on actualise, et les trente étapes se rejouent seules.
C'est exactement ce qui vous fait gagner les deux jours par mois.
Nettoyer, une saleté à la fois
Fichier 1 — l'export de caisse
Chargez baraka-t1.xlsx en Transformer les données. Quatre problèmes, dans cet ordre.
① Douze lignes vides au milieu. Quelqu'un a supprimé du contenu sans supprimer les lignes.
Accueil → Supprimer les lignes → Supprimer les lignes vides.
② Les dates sont du texte. Regardez l'icône à gauche du nom de colonne : ABC, pas une date. L'export a rendu 05/03/2026 — jour/mois/année.
Clic droit sur Date → Modifier le type → En utilisant les paramètres régionaux → Type Date, Paramètres régionaux Français (France).
⚠️ Ne passez jamais par le simple « Modifier le type → Date ». Power BI lit alors au format anglais, et
05/03/2026devient le 3 mai au lieu du 5 mars. Les douze premiers jours de chaque mois basculent, les autres passent en erreur. Votre courbe mensuelle est fausse, et elle ne le crie pas.C'est l'erreur la plus coûteuse de tout Power BI.
③ Quarante-sept doublons. Un export a été relancé.
Accueil → Supprimer les lignes → Supprimer les doublons.
⚠️ Sur la colonne
N° ventesélectionnée, et elle seule. Si vous dédoublonnez sur toutes les colonnes, vous supprimez aussi les vraies ventes identiques — même agent, même produit, même jour, deux clients. Elles existent. Vous effaceriez du chiffre d'affaires réel en croyant nettoyer.Un identifiant sert exactement à ça. Quand un fichier n'en a pas, demandez-le avant de commencer.
④ Des espaces invisibles. Cent quatre-vingt-onze agents s'appellent Aïcha Diallo au lieu de Aïcha Diallo. À l'écran, c'est pareil. Pour Power BI, ce sont deux personnes.
Sélectionnez les colonnes de texte → Transformer → Format → Supprimer les espaces.
💡 Faites-le sur toutes les colonnes de texte, systématiquement, même quand rien ne semble sale. Ça ne coûte rien et ça évite un dédoublement de ligne que vous mettriez une heure à trouver.
⑤ Le pays écrit de vingt-cinq façons. Côte d'Ivoire, Cote d'Ivoire, COTE D IVOIRE, RD Congo, R.D. Congo, rd congo…
Trois agents l'ont tapé à la main. Votre graphique par pays affichera vingt-cinq barres pour vingt pays.
Deux façons de le régler :
- Pour quelques valeurs : clic droit →
Remplacer les valeurs,
une par une. - Pour une liste qui va revenir : une table de correspondance
— un petit fichier à deux colonnes,écrit comme ça→devrait être, qu'on fusionne. C'est plus long aujourd'hui et beaucoup plus court le mois prochain.
Commencez par la première méthode. Nous reviendrons sur la seconde au module 3, quand nous saurons fusionner.
Fichier 2 — le CSV à la française
baraka-t2.csv. Dans la fenêtre d'aperçu, avant de charger :
| Réglage | Valeur | Pourquoi |
|---|---|---|
| Origine du fichier | 65001 : Unicode (UTF-8) |
sinon « Côte d'Ivoire » devient « Côte d'Ivoire » |
| Délimiteur | Point-virgule | un CSV français sépare au point-virgule |
Puis le vrai piège de ce fichier : les montants s'écrivent 1 234,50 — espace pour les milliers, virgule pour les décimales. Power BI les lit comme du texte, et une colonne de texte ne s'additionne pas.
Clic droit sur Montant → Modifier le type → En utilisant les paramètres régionaux → Nombre décimal, Français (France).
💡 Même menu que pour les dates, même raison. Retenez ce chemin : « En utilisant les paramètres régionaux » est la réponse à neuf problèmes d'import sur dix, et presque personne ne le connaît.
Si un Erreur persiste dans la colonne, c'est une espace insécable (celle que produisent les tableurs). Remplacer les valeurs → chercher l'espace, remplacer par rien — puis changer le type.
Fichier 3 — le tableau croisé
baraka-t3.xlsx n'est pas une liste de ventes. C'est un tableau croisé : les mois sont devenus des colonnes.
Un tableau croisé se lit bien et se calcule mal : vous ne pouvez pas filtrer sur « le mois » puisqu'il n'y a pas de colonne « mois ».
Dépivoter, et c'est deux clics : sélectionnez les trois colonnes de mois → Transformer → Supprimer le tableau croisé dynamique des colonnes. Renommez Attribut en Mois et Valeur en Montant.
⚠️ Et supprimez la ligne
TOTAL. Elle est à la fin du fichier, elle a l'air inoffensive, et elle double votre chiffre d'affaires du trimestre. À elle seule, elle explique 187 920 des 195 189 dollars d'écart.
Accueil→Supprimer les lignes→Supprimer les lignes du bas→ 2 — ou mieux, filtrez la colonnePayspour exclureTOTAL, ce qui tiendra même si le fichier change de longueur le mois prochain.
Retenez ce dernier réflexe. Supprimer « les deux dernières lignes » marche aujourd'hui ; filtrer sur une condition marche toujours. Entre les deux, choisissez la condition.
Les faire écrire par Claude
Power Query s'écrit dans un langage qui s'appelle M. Vous ne l'avez pas vu, mais chacun de vos clics en a produit. Ouvrez Affichage → Éditeur avancé : votre travail est là, en toutes lettres.
Claude écrit du M. Dans votre projet PBIP :
Dans ce projet, ajoute une requête Power Query qui charge
baraka-t1.xlsx :
- supprime les lignes vides
- convertit la colonne Date depuis le texte jj/mm/aaaa
(paramètres régionaux français)
- supprime les doublons sur N° vente uniquement
- supprime les espaces de début et de fin sur toutes les
colonnes de texte
- normalise les noms de pays : « Cote d'Ivoire » et
« COTE D IVOIRE » deviennent « Côte d'Ivoire », « R.D. Congo »
et « rd congo » deviennent « RD Congo »
Nomme les étapes en français, de façon lisible.
Puis relisez l'éditeur avancé. C'est le moment le plus utile du module.
Ce que vous devez vérifier, à chaque fois :
- La conversion de date mentionne-t-elle bien
"fr-FR"?
Sans ça, le 5 mars devient le 3 mai.- Le dédoublonnage porte-t-il bien sur
{"N° vente"}seul ?- L'ordre des étapes est-il tenable ? Supprimer les espaces
après avoir remplacé les noms de pays laisse passerRD Congo.Trois questions, trente secondes. C'est le prix de la confiance.
Colonne ou mesure : la question qui décide de tout
Vous avez maintenant des données propres. Il faut calculer dessus — et Power BI propose deux objets qui se ressemblent et n'ont rien à voir.
La règle, et elle tient en une phrase :
Si le résultat appartient à la ligne, c'est une colonne. Si le résultat dépend de ce qu'on regarde, c'est une mesure.
Montant = Quantité × Prix unitaire appartient à la ligne : colonne. Chiffre d'affaires total dépend du pays sélectionné, du mois affiché, du segment cliqué : mesure.
⚠️ Dans le doute, faites une mesure. Une colonne calculée de trop alourdit le modèle et fige un résultat ; une mesure de trop ne coûte rien. Les modèles lents que nous verrons au module 9 sont presque toujours des modèles pleins de colonnes qui auraient dû être des mesures.
Vos quatre premières mesures
Accueil → Nouvelle mesure.
CA total = SUM ( Ventes[Montant USD] )
Nombre de ventes = COUNTROWS ( Ventes )
Panier moyen =
DIVIDE ( [CA total], [Nombre de ventes] )
Unités vendues = SUM ( Ventes[Quantité] )
💡
DIVIDEet jamais la barre oblique.[CA] / [Ventes]rend une erreur quand le dénominateur est zéro — ce qui arrive dès qu'un filtre ne laisse aucune ligne.DIVIDErend un blanc, proprement. Votre tableau de bord affiche un vide au lieu d'un message rouge.
Et un réflexe de rangement qui paraît anodin : créez une table vide nommée _Mesures et déplacez-y les quatre. Dans six mois, avec quarante mesures, vous me remercierez.
Le total tombe juste
Reprenez votre carte CA total.
| Avant nettoyage | 822 186 $ |
| Après nettoyage | 626 997 $ |
Le chiffre du module 1. À l'unité près.
Ce n'est pas une coïncidence, c'est une vérification. Et c'est l'habitude la plus professionnelle de tout ce cours : quand vous nettoyez des données, vous devez avoir un chiffre connu à retrouver. Sans point de contrôle, « j'ai nettoyé » ne veut rien dire — vous avez peut-être supprimé deux mille lignes correctes.
Demandez toujours un chiffre de contrôle avant de commencer un nettoyage. « Quel chiffre d'affaires la comptabilité annonce-t-elle pour mars ? » Cette question vous fera gagner des journées, et elle vous évitera le module 9.
Refaites maintenant les trois visuels du module 1 sur ces données. Comparez les deux tableaux de bord côte à côte : le classement des pays a changé, parce que les variantes d'écriture coupaient la Côte d'Ivoire et la RD Congo en morceaux.
Enregistrez. Deuxième livrable.
Ce que vous avez appris sans qu'on vous le dise
| Rencontré aujourd'hui | Approfondi au module |
|---|---|
| Fusionner une table de correspondance | 3 |
| Plusieurs tables qui coexistent | 4 |
| Le contexte de filtre d'une mesure | 5 |
Une colonne Mois séparée de la date |
6 |
| Un modèle alourdi par des colonnes inutiles | 9 |
Avant le module 3
Gardez votre fichier propre : c'est la base de tout le reste du cours.
Et remarquez ce qui cloche encore, parce que c'est la prochaine séance :
Vous avez trois tables séparées — T1, T2, T3 — et vous avez dû les regarder une par une. Votre segment
Catégoriene filtre que l'une des trois. Votre total, vous l'avez calculé à la main en additionnant trois cartes.Comment fait-on pour que trois tables se comportent comme une seule ?
Au module 3 : réunir, relier, choisir le bon graphique — et publier le résultat sur Power BI Service.
Questions sur cette leçon
Posez-la ici plutôt qu'en privé : la réponse servira à quelqu'un d'autre. Votre question part aussi dans le fil, où toute la communauté la voit.
À télécharger
Questions fréquentes
Après conversion, toute ma colonne Date est en erreur.
Vous avez utilisé « Modifier le type → Date » au lieu de « Modifier le type → En utilisant les paramètres régionaux ». Supprimez l'étape fautive dans le volet Étapes appliquées — rien n'est perdu, Power Query n'a touché à aucun fichier — et refaites-la en choisissant Français (France).
Mon CSV affiche « Côte d'Ivoire » au lieu de « Côte d'Ivoire ».
C'est l'encodage. Dans la fenêtre d'aperçu du fichier, avant de charger, réglez Origine du fichier sur 65001 : Unicode (UTF-8). Si vous avez déjà chargé, cliquez sur l'étape Source dans le volet de droite : le réglage s'y modifie sans tout recommencer.
La colonne Montant refuse de passer en nombre, même avec les paramètres régionaux.
Il reste une espace insécable — celle que produisent les tableurs, invisible et différente d'une espace normale. Remplacer les valeurs : copiez l'espace depuis une cellule du fichier, remplacez par rien, puis changez le type.
Mon total ne tombe pas sur 626 997 $.
Reprenez les trois points de contrôle, dans l'ordre : les 47 doublons de T1 sont-ils partis (dédoublonnage sur N° vente seul) ? La ligne TOTAL de T3 est-elle exclue ? Les dates de T1 sont-elles bien converties, sans ligne en erreur ? Ces trois-là expliquent la quasi-totalité de l'écart.
Faut-il nettoyer dans Power Query ou avec du DAX ?
Dans Power Query, presque toujours. Il travaille une fois, au chargement, et allège le modèle. Le DAX recalcule à chaque clic sur un modèle déjà chargé. La règle : tout ce qui peut être fait avant le chargement doit l'être avant le chargement. Nous y reviendrons au module 9, quand un rapport mettra quarante secondes à s'ouvrir.