Suppression d'espaces inutiles

Résolu
Bonjour,

je souhaiterai supprimer sur l'ensemble de ma feuille les espaces inutiles
Mes cellules contiennent des chaînes de caractères.
Mais parfois, entre les mots ils y a des espaces en trop (deux, trois, quatre... espaces). Je voudrais ramener ces espaces à 1
pour que : "Aujourd'hui c'est samedi" (avec 4 espaces entre c'est et samedi)
devienne : "Aujourd'hui c'est samedi"

J'arrive pas à trouver de macro qui fonctionne.
Qui peut m'aider ?

3 réponses

  1. Bonjour
    Sub RemplacerEspaces()
        Application.ScreenUpdating = False
        For i = 1 To 10
            Cells.Replace What:="  ", Replacement:=" ", LookAt:=xlPart
        Next i
    End Sub

    Remplacez la valeur 10 par le nombre maximum d'espaces possibles.
    Cdlt
    1. Contributeur
      bonjour helpvba, Frenchie

      autre possibilité quelque soit le texte et nombre espaces superflus
      un peu usine à gaz mais...
      Option Explicit
      '------
      Function epurer_espaces(texto)
      Dim Brut, Cptr As Byte
      Brut = Split(texto, " ")
      For Cptr = 0 To UBound(Brut)
      If Brut(Cptr) <> "" Then
      epurer_espaces = epurer_espaces & Brut(Cptr) & " "
      End If
      Next
      epurer_espaces = RTrim(epurer_espaces)
      End Function