Transformer & nettoyer vos données
Avant d'analyser des données, il faut les préparer. Dans ce cours, tu apprends à importer un fichier Excel brut et à le rendre exploitable avec Power Query, l'outil ETL de Power BI.
Power BI Desktop n'existe pas sur Mac. Tout se fait sur app.powerbi.com (compte pro Microsoft / Power BI Pro requis). Pour ce cours de transformation, on utilise un Flux de données (Dataflow), qui contient Power Query Online — l'éditeur est quasi identique à Desktop. ⚠️ Quelques commandes portent un nom différent en ligne : garde le lexique ci-dessous sous la main.
📖 Lexique Desktop ↔ Power Query Web (clique pour ouvrir)
| Action | 💻 Desktop | 🌐 Web (Power Query Online) |
|---|---|---|
| Importer un fichier | Obtenir les données › Classeur Excel | Ajouter de nouvelles tables / Obtenir des données › Classeur Excel |
| Fractionner une colonne | Fractionner la colonne | Diviser la colonne |
| Dépivoter les autres colonnes | Dépivoter les autres colonnes | Supprimer les autres colonnes du tableau croisé dynamique |
| Dépivoter les colonnes | Dépivoter les colonnes | Supprimer les colonnes du tableau croisé dynamique |
| Changer le type d'une colonne | Modifier le type / Type de données | Type de modification |
| Terminer / charger | Fermer & appliquer | Enregistrer et fermer (ou « Créer un rapport » selon l'écran) |
✅ Identiques dans les deux outils : Remplir (Vers le bas/haut), Remplacer les valeurs, Supprimer les lignes (du haut…), Colonne conditionnelle, Colonne à partir d'exemples, Colonne personnalisée, Utiliser la première ligne comme en-têtes, Ajouter/Fusionner des requêtes, Qualité de colonne.
Fichier à télécharger : 02 - Base-powerquery.xlsx. Il contient plusieurs feuilles/tableaux (base, Produits, ca_annuel, coordonnées, Virgules, logique, Départements, colonnes, Part1, Part2) que nous allons transformer un par un.
📗 Tu connais Excel ? Voici l'équivalent des opérations Power Query de ce cours
| Dans Power Query | ≈ Dans Excel | L'idée |
|---|---|---|
| Utiliser la 1ʳᵉ ligne comme en-têtes | Mettre sous forme de tableau (avec en-têtes) | Nommer les colonnes |
| Remplir › Vers le bas | Recopier vers le bas (Ctrl+D) | Combler les cellules vides |
| Fractionner / Diviser la colonne | Données › Convertir (Texte en colonnes) | Éclater une colonne en plusieurs |
| Colonne à partir d'exemples | Remplissage instantané (Ctrl+E) | Power Query devine la règle |
Colonne personnalisée (&) | Formule avec & ou CONCATENER() | Coller des colonnes |
| Colonne conditionnelle | SI() / SI.CONDITIONS() | Une valeur selon une règle |
| Dépivoter les colonnes | L'inverse d'un tableau croisé dynamique | Repasser de colonnes à des lignes |
| Ajouter des requêtes | Copier-coller des tableaux à la suite | Empiler des lignes |
| Fusionner des requêtes | RECHERCHEV() / RECHERCHEX() | Joindre deux tables par une clé |
💡 Gros avantage de Power Query : tu fais la manipulation une seule fois, et elle se rejoue automatiquement à chaque actualisation des données.
L'interface de Power BI & les 3 outils
Comprendre Power Query, Power Pivot et Power View avant de manipulerPower BI permet de créer des rapports de comparaison, d'évolution et de répartition, des segments de données et des matrices (tableaux croisés dynamiques). Pour cela, il s'appuie sur trois outils :
- Power Query — un ETL (Extraire, Transformer, Charger). Il nettoie et met en forme les données brutes grâce au langage M. C'est tout l'objet de ce cours.
- Power Pivot — crée des colonnes et des mesures calculées avec le langage DAX et gère les relations entre les tables (cours 3 & 4).
- Power View — la vue rapport, où l'on construit les graphiques et visuels.
Repérer les zones de l'écran (Desktop)
- En haut : le ruban avec les groupes de commandes.
- À droite : les panneaux Données (tes tables), Visualisations (graphiques, filtres) et la liste des Mesures.
- À gauche : les vues de la base — Rapport, Données (table), Modèle (relations).
- En bas : les pages de ton rapport.

Repérer les zones (Power BI Web)
- À gauche : le menu de navigation et tes Espaces de travail (Workspaces).
- Dans un espace de travail : le bouton + Nouveau pour créer un Flux de données (préparation), un Modèle sémantique (mesures/relations) et un Rapport (visuels).
- Dans un Flux de données : l'éditeur Power Query Online, identique à Desktop (ruban Accueil / Transformer / Ajouter une colonne).
1. Flux de données = nettoyer (Power Query). 2. Modèle sémantique = relations + mesures DAX. 3. Rapport = visuels. On les enchaîne dans cet ordre, tous dans le navigateur.
Le vocabulaire ETL. Extraire = aller chercher la donnée (Excel, SQL, web…). Transformer = nettoyer/mettre en forme. Charger (Load) = envoyer le résultat propre dans Power BI pour l'analyser.
Importer un fichier Excel & ouvrir Power Query
Charger la base et entrer dans l'éditeur de transformation📁 À importer : table base du fichier 02 - Base-powerquery.xlsx.
Un fichier brut (Excel, SQL, internet) est rarement bien structuré : titres parasites, cellules fusionnées, mauvais formats. On va donc le faire passer par Power Query.
- Ouvre Power BI Desktop.
- Dans le ruban Accueil › Obtenir les données › Classeur Excel (ou « Importer des données Excel »).
- Sélectionne le fichier 02 - Base-powerquery.xlsx puis Ouvrir.
- Dans la fenêtre Navigateur, coche la table « base ». Un aperçu s'affiche à droite.
- ⚠️ Ne clique pas sur « Charger » : clique sur Transformer les données.

« Charger » vs « Transformer les données ». Charger envoie les données telles quelles dans le rapport. Transformer les données ouvre l'éditeur Power Query pour les nettoyer d'abord — c'est ce qu'on veut presque toujours faire.
- Va sur app.powerbi.com et connecte-toi (compte pro).
- Ouvre (ou crée) un Espace de travail dans le menu de gauche.
- Clique sur + Nouveau › Flux de données puis Ajouter de nouvelles tables.
- Choisis la source Classeur Excel. Dans « Se connecter à la source », clique sur Charger le fichier → Parcourir et sélectionne 02 - Base-powerquery.xlsx depuis ton Mac.
- Dans le navigateur de tables, coche « base » puis Transformer les données : l'éditeur Power Query Online s'ouvre.
Le fichier est téléversé dans le cloud du flux de données : tes camarades n'ont pas besoin de l'avoir sur leur Mac. L'éditeur qui s'ouvre est identique à celui de Desktop — toutes les manipulations des modules suivants sont les mêmes.
Tu es maintenant dans l'éditeur Power Query. Repère :
- À gauche : le volet Requêtes (la liste de tes tables).
- À droite : le volet Paramètres de requête avec les « Étapes appliquées » — l'historique de chaque transformation. C'est ton fil d'Ariane : on peut revenir en arrière à tout moment.
Supprimer des lignes & définir les entêtes
Nettoyer les titres parasites et nommer correctement les colonnes📁 Base : table base (02 - Base-powerquery.xlsx) — on continue sur la même requête qu'au module 1.
Sur la table « base », les deux premières lignes sont en trop (titre du tableau, cellules fusionnées « 2020/2021 ») et les entêtes ne sont pas définis.
Règle clé : Power Query considère toujours la première ligne comme la future ligne d'entêtes. Il faut donc d'abord supprimer les lignes parasites du dessus.
- Ruban Accueil › Réduire les lignes › Supprimer les lignes › Supprimer les lignes du haut.
- Indique le nombre de lignes à retirer (ici 1, la ligne « 2020/2021 ») puis OK.
- La vraie ligne d'entêtes est maintenant en haut. Clique sur Accueil › Utiliser la première ligne comme en-têtes.
- Vérifie chaque nom de colonne. Pour renommer : double-clic sur l'entête.
Chaque action ajoute une ligne dans « Étapes appliquées ». Tu peux cliquer sur la petite croix pour annuler une étape, ou cliquer sur une étape pour revoir l'état des données à ce moment-là.

Remplir les cellules vides
Propager une valeur vers le bas pour combler les « null »📁 À importer : table Produits (02 - Base-powerquery.xlsx).
Ouvre la table « Produits ». Certaines cellules sont vides : en Power Query, une cellule vide s'affiche null.
Souvent, une colonne « catégorie » n'indique la valeur qu'une seule fois, puis laisse des null en dessous. On veut recopier la valeur du dessus dans les cellules vides.
- Dans le navigateur, importe et sélectionne la table « Produits », puis définis ses entêtes si nécessaire (module 2).
- Clic droit sur l'entête de la colonne à compléter.
- Dans le menu, choisis Remplir › Vers le bas.
- Les
nullsont remplacés par la dernière valeur rencontrée au-dessus.
Vers le bas / vers le haut. « Vers le bas » recopie la valeur du dessus dans les vides en dessous (le cas le plus courant). « Vers le haut » fait l'inverse.
≈ En Excel : comme recopier une valeur vers le bas avec la poignée de recopie ou Ctrl+D (ou « Atteindre > Cellules vides » puis = la cellule du dessus).

null.Pivoter / dépivoter des colonnes
Remettre une table « en tableau croisé » au format exploitable📁 À importer : table ca_annuel (02 - Base-powerquery.xlsx).
La table « ca_annuel » a un problème de structure : les années sont éclatées en colonnes. Objectif : obtenir 3 colonnes propres → Villes, Date (année), CA.
| Villes | 2018 | 2019 | 2020 |
|---|---|---|---|
| Paris | 120 | 135 | 150 |
| Lyon | 80 | 92 | 110 |
| Villes | Date | CA |
|---|---|---|
| Paris | 2018 | 120 |
| Paris | 2019 | 135 |
| … | … | … |
- Importe la table « ca_annuel » et définis les entêtes.
- Clique sur l'entête de la colonne « Villes » pour la sélectionner (c'est la seule colonne déjà correcte).
- Clic droit sur « Villes » : choisis Dépivoter les autres colonnes. choisis Supprimer les autres colonnes du tableau croisé dynamique (c'est le nom de « Dépivoter » sur le web !).
- Power Query crée deux colonnes : Attribut (les années) et Valeur (le CA). Renomme-les en « Date » et « CA ».
Dans Power Query Online, « Dépivoter » est traduit par « …du tableau croisé dynamique » :
- Dépivoter les autres colonnes → Supprimer les autres colonnes du tableau croisé dynamique ✅ (c'est celle-ci)
- Dépivoter les colonnes → Supprimer les colonnes du tableau croisé dynamique
Malgré le mot « Supprimer », aucune donnée n'est perdue : l'opération transforme bien les colonnes en lignes.
≈ En Excel : dépivoter, c'est l'inverse d'un tableau croisé dynamique : au lieu d'étaler les années en colonnes, on remet une ligne par couple (Ville, Année). Très difficile à faire à la main dans Excel — ici, un clic suffit.
Pourquoi « Dépivoter les autres colonnes » ? En sélectionnant uniquement la colonne à garder telle quelle (Villes), toutes les autres sont dépivotées. C'est plus robuste : si une nouvelle année arrive, elle sera dépivotée automatiquement.

Ferme l'éditeur : Accueil › Fermer & appliquer.Enregistre le flux (Enregistrer et fermer), puis crée un Rapport à partir de ce jeu de données. Puis, dans la vue Rapport :
Une fois ton rapport publié, tu peux créer et modifier des visuels directement dans le navigateur : ouvre le rapport puis clique sur Modifier. Le volet Visualisations est identique à celui de Desktop.
Séparer / fractionner des données
Éclater une colonne en plusieurs : délimiteur, transitions, double séparateur📁 À importer : tables Coordonnées puis Virgules (02 - Base-powerquery.xlsx).
Sur la base « coordonnées », on veut séparer des colonnes : Nom → Civilité / Nom / Prénom · ID magasin → Magasin / ID · Achats → Catégorie / Produit.
Sur le web, la commande Fractionner la colonne s'appelle « Diviser la colonne » (ruban Accueil, ou clic droit). Les options « Par délimiteur », « Par positions… » sont identiques.
≈ En Excel : c'est Données › Convertir (Texte en colonnes) — ou le Remplissage instantané (Ctrl+E) pour les cas simples.
Cas 1 — séparer par délimiteur (un espace)
- Sélectionne la colonne « Nom ».
- Ruban Accueil › Fractionner la colonne › Par délimiteur.
- Choisis le délimiteur Espace puis OK. (Power Query détecte souvent le séparateur tout seul.)
Cas 2 — pas de délimiteur (mot + chiffre)
Sur la colonne « ID magasin » du type Magasin12, il n'y a pas de séparateur visible.
- Sélectionne la colonne, puis Fractionner la colonne › Par positions de chiffres et de non-chiffres.
- Précisément : choisis l'option « Selon la transition de non-chiffre à chiffre ». →
Magasin|12.
Cas 3 — deux délimiteurs (base « Virgules »)
Structure : la virgule « , » sépare catégorie / type de produit, et le slash « / » sépare les différents achats du client.
- Fractionne d'abord par le délimiteur « / » pour isoler chaque achat.
- Pour éviter des cellules
null, dépivote les nouvelles colonnes d'achats afin d'avoir un achat par ligne (sans toucher à la colonne « Nom du client »). (Sur le web : clic droit → « Supprimer … du tableau croisé dynamique ».) - Fractionne ensuite par « , » pour séparer catégorie et produit.
- Nettoie : supprime les colonnes en trop et compare le résultat avec le fichier Excel d'origine.

Créer une colonne avec l'outil « suite logique »
La « Colonne à partir d'exemples » devine la règle à ta place📁 À utiliser : table Coordonnées (02 - Base-powerquery.xlsx) — la colonne d'exemple « logique ».
Autre méthode pour créer une colonne, sans formule : tu donnes un ou deux exemples et Power Query détecte la logique pour le reste de la colonne.
- Ruban Ajouter une colonne › Colonne à partir d'exemples › À partir de la sélection.
- Une nouvelle colonne vide apparaît à droite. Dans la première cellule, tape le début du résultat attendu, par ex.
André…. - Power Query détecte la structure et complète automatiquement tout le reste (ici : prénom + nom).
- Quand le résultat est bon, clique OK : la colonne est ajoutée.
≈ En Excel : c'est le Remplissage instantané (Flash Fill, Ctrl+E) : tu écris un exemple du résultat voulu, et l'outil complète le reste tout seul.
Idéal pour reformater des noms, construire un identifiant ou extraire un morceau de texte sans connaître le langage M. Donne 2-3 exemples si la règle est complexe.
Combiner des colonnes & colonne conditionnelle
Fusionner deux colonnes, réparer une erreur de format, créer une règle SI…ALORS📁 À importer : table Départements (02 - Base-powerquery.xlsx).
Sur la base « Départements », on veut fusionner la colonne Département avec la colonne N°, puis créer une colonne conditionnelle.
A. Fusionner deux colonnes (concaténation &)
- Ruban Ajouter une colonne › Colonne personnalisée.
- Construis une formule qui colle les deux colonnes avec l'opérateur & (concaténation) :
= [Département] & " " & [N°]
Erreur fréquente « Error ». Si la colonne N° n'est pas au bon format (texte vs nombre), Power Query affiche Error. Ne supprime pas ta fusion ! Voici comment réparer :
- Change le format de la colonne N° en Texte (clic sur l'icône de type à gauche de l'entête).
- Dans « Étapes appliquées », déplace l'étape « Type modifié » au-dessus de l'étape « Personnalisé ajoutée » (glisser, ou clic droit → Monter).
- Reclique sur l'étape « Personnalisé ajoutée » : l'erreur a disparu.
Leçon importante : l'ordre des étapes compte. Le bon format doit être appliqué avant le calcul qui l'utilise.

B. Colonne conditionnelle (SI … ALORS … SINON)
Règle : SI le département contient 75, ALORS afficher « Île-de-France », SINON « Autres ».
- Ruban Ajouter une colonne › Colonne conditionnelle.
- Donne un nom à la colonne, puis configure : Si [Département] égal à
75AlorsÎle-de-France. - Dans Sinon, saisis
Autres, puis OK.

Trier, déplacer & supprimer des colonnes
Ne garder que les colonnes utiles à l'analyse📁 À importer : table Colonnes (02 - Base-powerquery.xlsx).
Sur la base « colonnes », on veut comparer uniquement les années 1984 et 1994 (avec la colonne Villes) et supprimer tout le reste.
- Déplace les colonnes cibles au début (à gauche) : clic-glisser à la souris, ou clic droit → Déplacer → Vers le début.
- Sélectionne les colonnes 1984, 1994 et Villes (maintiens Ctrl pour la sélection multiple).
- Clic droit sur la sélection → Supprimer les autres colonnes.

« Supprimer les autres colonnes » est plus sûr que de supprimer une à une : si de nouvelles colonnes inutiles apparaissent plus tard dans la source, elles seront retirées automatiquement.
Combiner deux bases de données (Ajouter des requêtes)
Empiler Part1 + Part2, réparer les noms de colonnes, masquer les sources📁 À importer : tables Part1 et Part2 (02 - Base-powerquery.xlsx).
Objectif : combiner les bases « Part1 » et « Part2 » en une seule table (les empiler l'une sous l'autre).
- Importe les deux tables : dans le navigateur, coche Part1 et Part2, puis Transformer les données.
- Dans le volet de gauche, tu vois 2 requêtes : Part1 et Part2.
- Ruban Accueil › groupe Combiner › Ajouter des requêtes › Ajouter les requêtes comme étant nouvelles.
- Choisis Part1 et Part2 : une nouvelle requête combinée est créée.

Attention aux noms de colonnes ! Pour empiler correctement, les colonnes doivent porter le même nom dans les deux tables. Si Part2 a une colonne Produitss au lieu de Produit, Power BI créera deux colonnes séparées avec des null.
Réparer un nom de colonne différent
- Dans Part2, double-clique sur l'entête
Produitsset renomme-le enProduit. - Supprime l'ancienne requête combinée (elle était fausse).
- Recrée l'« Ajouter des requêtes » : cette fois les colonnes s'alignent.
Masquer les tables sources
On ne veut afficher que la table combinée, pas Part1 et Part2.
- Clic droit sur Part1 → décoche Activer le chargement. Idem pour Part2.
- Elles n'apparaîtront plus dans la vue Rapport (Power View), mais resteront disponibles comme étapes intermédiaires.
- Termine avec Accueil › Fermer & appliquer : les données propres sont chargées dans le modèle.
- Termine avec Enregistrer et fermer (ou Créer un rapport selon l'écran), donne un nom au flux, puis lance une Actualisation. Tes tables propres sont prêtes à être réutilisées.
Ajouter vs Fusionner. Ajouter des requêtes = empiler des lignes (tables de même structure). Fusionner des requêtes = joindre des colonnes via une clé commune (comme un RECHERCHEV) — on le verra plus tard.
≈ En Excel : Ajouter ≈ copier-coller un tableau à la suite d'un autre. Fusionner ≈ RECHERCHEV() / RECHERCHEX() pour rapprocher deux tables par une clé commune.

Table.Combine({Part1, Part2}) empile les deux tables en une seule.Quand tout est propre : Accueil › Publier dans Power BI Desktop, choisis un espace de travail, et ton rapport s'ouvre sur app.powerbi.com. Tu pourras le consulter dans le navigateur, sur mobile et le partager avec d'autres.
🎉 Bravo ! Tu sais maintenant importer, nettoyer, restructurer et combiner des données avec Power Query. C'est la base de tout projet Power BI réussi.