Accueil/Cours gratuits/Power Query/Langage M/Lire et modifier le code M
Power Query | Langage M

Lire et modifier le code M

Gratuit, sans inscription Niveau 3 / 3 | Avancé Lecture 9 min Simulateur V1.0 | 30/10/2026

Tu n'as pas besoin d'écrire du M pour utiliser Power Query. Mais savoir le lire te permet de comprendre une requête héritée, de corriger une erreur en dix secondes et de faire ce que les menus ne savent pas faire.

Télécharger la fiche PDF gratuiteSans inscription, mise en page prête à imprimer

01Définition

En une phrase

Le langage M est le langage dans lequel Power Query enregistre chaque requête. Une requête est un bloc let … in : entre les deux, une suite d'étapes « nom = expression » ; après in, l'étape renvoyée comme résultat.

02Le simulateur

Ouvre l'Éditeur avancé du simulateur, puis passe en « Noms renommés ».

03La structure d'une requête

Une requête complète
let
    Source = Excel.CurrentWorkbook(){[Name="Stock"]}[Content],
    #"Lignes filtrées" = Table.SelectRows(Source, each [Catégorie] = "Informatique"),
    #"Lignes triées" = Table.Sort(#"Lignes filtrées", {{"Stock", Order.Descending}})
in
    #"Lignes triées"
  • Chaque étape se termine par une virgule, sauf la dernière avant in.
  • Un nom avec des espaces ou des accents s'écrit #"…".
  • Chaque étape reçoit le nom de l'étape précédente en premier argument : c'est le fil de la recette.
  • each signifie « pour chaque ligne », et [Colonne] la valeur de cette colonne dans la ligne.

04Les retouches utiles

BesoinRetouche dans la barre de formule
Renommer les colonnes produitesChanger "Attribut", "Valeur" en "Mois", "CA"
Ajouter le type d'une colonne calculéeAjouter , type number en dernier argument de Table.AddColumn
Rendre un filtre insensible à la casseText.Lower([Ville]) = "lille"
Ignorer une colonne qui peut manquerMissingField.Ignore en dernier argument de Table.RemoveColumns
💡 AstuceLes commentaires

Dans l'Éditeur avancé, // commence un commentaire jusqu'à la fin de la ligne. Explique pourquoi une étape existe : le toi de dans six mois te remerciera.

05Pièges à éviter

⚠️ PiègeMajuscules et minuscules

Le M est sensible à la casse : table.selectrows n'existe pas, Table.SelectRows oui. Même chose pour les noms de colonnes : [ville] n'est pas [Ville].

⚠️ PiègeRenommer une étape dans le code

Si tu renommes une étape dans l'Éditeur avancé, renomme aussi chaque endroit où elle est citée, y compris après in. Le clic droit > Renommer du volet Étapes appliquées le fait pour toi.

06Questions fréquentes

Qu'est-ce que le langage M dans Power Query ?

Le langage M est le langage dans lequel Power Query enregistre chaque requête. Une requête est un bloc let … in : entre les deux, une suite d'étapes « nom = expression » ; après in, l'étape renvoyée comme résultat.

Quel est le piège le plus fréquent avec le langage M ?

Majuscules et minuscules. Le M est sensible à la casse : table.selectrows n'existe pas, Table.SelectRows oui. Même chose pour les noms de colonnes : [ville] n'est pas [Ville].

La fiche « Lire et modifier le code M » est-elle gratuite ?

Oui. La fiche, son simulateur et sa version PDF sont en accès libre et gratuit, sans inscription. Elle fait partie du cours Power Query gratuit de mesetudesdecas.fr, qui compte 22 fiches.

Pour les formateurs

Passez de la fiche à la mise en situation

Les études de cas de mesetudesdecas.fr placent vos apprenants face à un vrai besoin d'entreprise : données sales à préparer avec Power Query, modèle de données et tableau de bord, avec énoncé, corrigé et pas-à-pas du formateur.

Voir le catalogue
Voir aussi

Toutes les fiches Power Query

Les 12 défis Power Query

Voir aussi le cours de formules Excel gratuit

Fiche V1.0 | Dernière mise à jour : 30/10/2026 | Clément Delobel, formateur Power Query et Power BI