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
    0
    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

      0