IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

supprimer espaces en fin de cellule


Sujet :

Macros et VBA Excel

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    491
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 491
    Par défaut supprimer espaces en fin de cellule
    Bonjour

    je reviens par rapport a mon post de ce matin pour supprimer les minuscules d'une cellule
    J'ai maintenant un probleme car j'ai des espaces en fin de cellule et je voudrais les supprimer

    est ce que quequ'un peut m'orienter?

    merci

    nini

  2. #2
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Par défaut
    Bonjour,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveCell.Value = Application.Trim(ActiveCell)
    Mais ce n'est pas exactement ce que tu demandes. Ca supprimera aussi les espaces devant et remplacera les espaces multiples consécutifs à l'intérieur du texte par un seul espace (c'est la fonction Excel SUPPRESPACE).

    Si ça ne convient pas :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    For i = Len(ActiveCell.Value) To 1 Step -1
        If Mid(ActiveCell.Value, i, 1) <> " " Then
            ActiveCell.Value = Mid(ActiveCell.Value, 1, i)
            Exit For
        End If
    Next i

  3. #3
    Expert confirmé
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Par défaut
    Bonjour,

    Tu peux essayer avec RTrim --> http://silkyroad.developpez.com/VBA/...racteres/#LI-M

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    491
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 491
    Par défaut
    Bonjour,

    Je reviens avec mon problème d'espace en fin de cellule.

    J'ai mis le code suivant mais il ne fait rien ???
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    Sub Macro2()
     
    Dim plage As Range
    Dim Cel As Range
    Set plage = Selection
     
     
    For Each Cel In plage
        Cel.Value = Trim(Cel.Value)
     
     
    ' avec le code suivant à la place de celui du dessus, il m'efface toute la cellule et non uniquement l'espace en fin de ligne ????
    'Cel.Value = Application.WorksheetFunction.Trim(Cell)
    Next Cel
     
    End Sub
    PAr avance merci

    Nini

  5. #5
    Expert confirmé
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Par défaut
    Citation Envoyé par fring Voir le message
    Bonjour,

    Tu peux essayer avec RTrim --> http://silkyroad.developpez.com/VBA/...racteres/#LI-M

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    491
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 491
    Par défaut
    Avec Rtrim cela ne donne rien, la macro s'exécute et l'espace est toujours là

    Voici le code utilisé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Dim plage As Range
    Dim Cel As Range
    Set plage = Selection
     
     
    For Each Cel In plage
        Cel.Value = RTrim(Cel.Value)
        'Cel.Value = Application.WorksheetFunction.Trim(Cell)
    Next Cel

  7. #7
    Membre Expert Avatar de rvtoulon
    Homme Profil pro
    Agent Technique
    Inscrit en
    Mars 2009
    Messages
    1 042
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Agent Technique
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2009
    Messages : 1 042
    Par défaut
    bonjour,
    les réponses données ci-dessus résoud ton problème fait ce test:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Sub test()
    Dim chaine As String, nb1 As Byte, nb2 As Byte
     
    chaine = "Bonjour " 'ici bonjour avec un espace à la fin
     
    nb1 = Len(chaine)
    MsgBox nb1 'ici = 8 caractères"
     
    chaine = Trim(chaine) 'ici j'enlève les espaces avant la chaine et après la chaine
     
    nb2 = Len(chaine)
    MsgBox nb2 'ici = 7 caractères, l'espace a été enlevé"
     
    End Sub
    ton problème doit venir d'ailleurs

  8. #8
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    491
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 491
    Par défaut
    Je confirme le problème vient d'ailleurs mais où ?

    J'ai fait ton test et j'obtient 11 caractères sur les 2 messages sachant que le champs sélectionné est :
    "16/05/2012 "

    J'ai essayé avec Rtrim mais c'est la même chose

  9. #9
    Membre expérimenté
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2012
    Messages
    191
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Mai 2012
    Messages : 191
    Par défaut
    Bonjour,

    Tu as regardé du côté du format du contenu de ta cellule?

    Cordialement.

  10. #10
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    491
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 491
    Par défaut
    Je suis en format date *23/05/2012

    et tu penses à quoi ?

  11. #11
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Par défaut
    Essaie :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
        ActiveCell.Value = Application.Trim(Application.Clean(ActiveCell.Value))
        ActiveCell.Value = Replace(ActiveCell, Chr(10), "")
    Si ça coince encore, joins un classeur exemple.

  12. #12
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    491
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 491
    Par défaut
    çà coince

    Ci joint le fichier
    Fichiers attachés Fichiers attachés

  13. #13
    Expert confirmé
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Par défaut
    Ce sont peut-être des espaces insécables

    Teste ceci pour voir :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Sub Macro2()
     
    Dim plage As Range
    Dim Cel As Range
    Set plage = Selection
     
     
    For Each Cel In plage
        Cel.Value = Replace(Cel.Value, Chr(160), "")
     
     
    Next Cel
     
    End Sub

  14. #14
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Sub test()
        For Each c In Range([B2], Cells(Rows.Count, 2).End(xlUp))
            c.Value = Replace(c, Chr(160), "")
        Next c
    End Sub

  15. #15
    Membre expérimenté
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2012
    Messages
    191
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Mai 2012
    Messages : 191
    Par défaut
    Si tes valeurs ont été copiées depuis une autre feuille dans ta colonne date, refais la copie en faisant collage spécial/valeurs. Je viens de faire ca sur ton classeur et ça fonctionne.

  16. #16
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    491
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 491
    Par défaut

    Vous êtes des pro en plus d'être des experts

    C'étaient des espaces insécables !

    Tiens au fait c'est quoi un espace insécable ?

  17. #17
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Par défaut
    Tiens au fait c'est quoi un espace insécable ?
    C'est un espace unissant deux mots ne pouvant être séparés en fin de ligne (césure).

  18. #18
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    491
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 491
    Par défaut
    Bonjour,

    Après un moi de non utilisation de la macro, me revoilà dessus et vla ti pas que je me rend compt d'un problème

    Les dates "01/06/2012 " deviennent "06/01/2012" avec la macro supprimant les espaces ?

    Par contre les dates "31/05/2012 " deviennent "31/05/2012"

    Est ce que quelqu'un peut m'aider ?

    Merci

    Nini

  19. #19
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Par défaut
    Bonjour,

    Quelle macro ? il y en a plusieurs dans ce fil.

Discussions similaires

  1. Supprimer des espaces en fin de cellules
    Par liop49 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 30/11/2010, 15h21
  2. Supprimer espace à la fin du contenu d'une variable
    Par Stefounette dans le forum JavaFX
    Réponses: 2
    Dernier message: 02/04/2010, 15h26
  3. Réponses: 1
    Dernier message: 19/08/2006, 15h02
  4. Réponses: 29
    Dernier message: 27/07/2006, 17h28
  5. Supprimer les espaces en fin de chaine.
    Par KneXtasY dans le forum C
    Réponses: 5
    Dernier message: 26/12/2005, 10h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo