---
title: "Supprimer les espaces dans Power BI (Text.Trim, Text.Clean)"
description: "Text.Trim, Text.TrimStart, Text.TrimEnd et Text.Clean dans Power Query : syntaxe, paramètre trim, exemples et le piège des zéros de remplissage."
url: "https://data-slconsulting.com/reference-power-query-dax/supprimer-les-espaces-power-bi/"
lang: "fr-FR"
---

Référence Power Query · 5 min de lecture

# Supprimer les espaces dans Power BI avec Text.Trim

Retirer les espaces parasites d’une colonne, les zéros de remplissage d’un code et les caractères invisibles d’un export.

Pour supprimer les espaces dans Power BI, on utilise la fonction Power Query `Text.Trim`. Par défaut, elle retire tous les espaces blancs situés au début et à la fin d’un texte. Les espaces au milieu du texte restent en place.

Elle a deux variantes : `Text.TrimStart`, qui ne traite que le début, et `Text.TrimEnd`, qui ne traite que la fin. Une quatrième fonction, `Text.Clean`, s’occupe d’un autre problème : les caractères de contrôle, comme les sauts de ligne, qui ne s’affichent pas mais empêchent deux valeurs d’être égales. Dans l’éditeur, ces opérations se trouvent dans le menu **Format** de l’onglet **Transformer**.

Syntaxe

## Un texte, et des caractères à retirer en option

```
Text.Trim(text as nullable text, optional trim as any) as nullable text
Text.TrimStart(text as nullable text, optional trim as any) as nullable text
Text.TrimEnd(text as nullable text, optional trim as any) as nullable text
Text.Clean(text as nullable text) as nullable text
```

| Paramètre | Rôle |
| --- | --- |
| `text` | Le texte à nettoyer. |
| `trim` | Facultatif. Un caractère unique ou une liste de caractères uniques. **Il remplace les espaces blancs retirés par défaut**, il ne s’y ajoute pas. Le retrait s’arrête dès qu’un caractère non listé est rencontré. |

`Text.Clean` n’a pas de paramètre `trim` : elle supprime tous les caractères de contrôle du texte, où qu’ils se trouvent.

Exemples

## Quatre cas courants

### Retirer les espaces de début et de fin

```
Text.Trim(" Bob ")
```

Le résultat est `"Bob"`.

### Retirer les zéros de remplissage d’un numéro de facture

```
Text.TrimStart("0004512", "0")
```

Le résultat est `"4512"`. Seuls les zéros de tête disparaissent.

### Retirer plusieurs caractères à la fois

```
Text.Trim("## Paul ##", {"#", " "})
```

Le résultat est `"Paul"`. La liste permet de retirer à la fois les dièses et les espaces.

### Supprimer un saut de ligne caché

```
Text.Clean("Jim#(lf)")
```

Le résultat est `"Jim"`. `#(lf)` représente un saut de ligne, que `Text.Clean` supprime comme tout caractère de contrôle.

En pratique

## Le paramètre trim qui fait oublier les espaces

Un export fournit des numéros de facture sous la forme `" 00450 "` : un espace, des zéros de remplissage, un espace. Vous voulez obtenir `"450"` et vous écrivez :

```
Text.Trim(" 00450 ", "0")
```

Le texte ressort inchangé. Le paramètre `trim` remplace les espaces retirés par défaut : la fonction ne cherche plus que des zéros, rencontre un espace en première position et s’arrête aussitôt.

Ajouter l’espace à la liste ne suffit pas non plus : `Text.Trim(" 00450 ", {" ", "0"})` renvoie `"45"`, car le zéro final de 450 est retiré avec le reste. La bonne écriture enchaîne deux étapes :

```
Text.TrimStart(Text.Trim(" 00450 "), "0")
```

`Text.Trim` retire d’abord les espaces, puis `Text.TrimStart` ne retire que les zéros de tête. Le résultat est `"450"`. Méfiez-vous aussi du cas limite : un numéro qui vaut `"0000"` devient un texte vide.

Questions fréquentes

## Ce qu’on nous demande sur Text.Trim

### Text.Trim supprime-t-il les espaces au milieu du texte ?

Non. Seuls le début et la fin sont traités. Pour réduire plusieurs espaces intérieurs à un seul, on peut découper puis recoller : `Text.Combine(List.Select(Text.Split(t, " "), each _ <> ""), " ")`.

### Quelle différence entre Text.Trim et Text.Clean ?

`Text.Trim` retire des caractères aux deux extrémités, des espaces blancs par défaut. `Text.Clean` retire les caractères de contrôle, comme les sauts de ligne, à n’importe quelle position du texte.

### Comment retirer seulement les espaces de fin ?

Avec `Text.TrimEnd`, qui laisse le début du texte intact. Par exemple `Text.TrimEnd("Ringo ")` renvoie `"Ringo"`.

### Pourquoi une fusion échoue-t-elle alors que les noms semblent identiques ?

Un espace en fin de valeur ou un saut de ligne invisible suffit à rendre deux textes différents. Appliquer `Text.Trim` et `Text.Clean` aux deux colonnes avant la fusion règle le problème dans la plupart des cas.

À côté

## Pour aller plus loin

- [Les fonctions de texte en Power Query](https://data-slconsulting.com/texte-power-query/).
- [Les erreurs Power Query les plus courantes](https://data-slconsulting.com/erreurs-power-query/) et comment les éviter.
- [Fusionner plusieurs tables dans Power BI](https://data-slconsulting.com/reference-power-query-dax/fusionner-plusieurs-tables-power-bi/).
- [La référence complète Power Query et DAX](https://data-slconsulting.com/reference-power-query-dax/).

**Sources.** Documentation officielle de l’éditeur, consultée le 14 octobre 2026 : [Text.Trim](https://learn.microsoft.com/fr-fr/powerquery-m/text-trim), [Text.TrimStart](https://learn.microsoft.com/fr-fr/powerquery-m/text-trimstart), [Text.TrimEnd](https://learn.microsoft.com/fr-fr/powerquery-m/text-trimend), [Text.Clean](https://learn.microsoft.com/fr-fr/powerquery-m/text-clean).

## Vos fusions ratent des lignes sans raison apparente ?

Nous relisons vos requêtes pour traquer les espaces et les caractères invisibles qui cassent vos correspondances.

[Réserver un appel](https://data-slconsulting.com/contact/) ou 01 83 64 60 25

---

Version Markdown de https://data-slconsulting.com/reference-power-query-dax/supprimer-les-espaces-power-bi/ (pour les agents IA : en-tête Accept: text/markdown, suffixe .md ou ?mode=agent). Index du site pour les agents : https://data-slconsulting.com/llms.txt. API publique : https://data-slconsulting.com/developers/. Contact : contact@data-slconsulting.com, 01 83 64 60 25.
