Suppression d'espaces inutiles

Résolu/Fermé
HelpSurVBA Messages postés 5 Date d'inscription samedi 14 mai 2016 Statut Membre Dernière intervention 15 septembre 2019 - Modifié par HelpSurVBA le 14/05/2016 à 07:51
HelpSurVBA Messages postés 5 Date d'inscription samedi 14 mai 2016 Statut Membre Dernière intervention 15 septembre 2019 - 14 mai 2016 à 16:35
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 ?


A voir également:

3 réponses

Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 337
14 mai 2016 à 08:40
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
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
14 mai 2016 à 09:18
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
HelpSurVBA Messages postés 5 Date d'inscription samedi 14 mai 2016 Statut Membre Dernière intervention 15 septembre 2019
14 mai 2016 à 16:35
Merci à tous
0