Supprimer virgules suivi de rien

pseudo -  
sriviere Messages postés 879 Statut Membre -
Bonjour,

J'ai des virgules "orphelines" (des virgules suivies de rien) dans un tableau inséré dans un document.

Je veux les supprimer par macro, mais je ne sais aps comment les rechercher.
pour chercher une virgule, une instruction du genre
Selection.Find.Execute FindText:=",", Replace:=wdReplaceAll, ReplaceWith:=""

MAIS je ne veux pas supprimer toutes les virgules mais juste celles suivies de rien.

Merci

10 réponses

  1. sriviere Messages postés 879 Statut Membre 413
     
    Bonjour,

    Pour trouver les virgules suivies de rien, mettez un espace après la virgule dans FindText:=", "

    Cordialement
    0
  2. pseudo
     
    Non, je ne peux pas mettre ", " parce que j'ai aussi des virgules qui servent à quelque chose et si j'ai 2 elements par exemple "elem1, elem2" alors ca va me supprimer ces virgules là aussi.
    0
  3. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
     
    Et de quel logiciel parles tu ?
    0
    1. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
       
      Salut michel,

      Chuuuut, c'est top-secret ! ;-)
      0
    2. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
       
      KGB ?

      aie, aie, aie...
      0
  4. sriviere Messages postés 879 Statut Membre 413
     
    Si tu es dans Word, tu vas dans Chercher/Remplacer (CtrlH)

    Tu écris :

    Chercher : , ([!a-z])

    ou en clair : virgule espace parenthèse crochet point d'exclamation a-z crochet parenthèse

    Remplacer par : rien

    et tu cliques dans Plus et tu coches la case caractères génériques.

    Le chercher va te chercher les virgules non suivies de lettres et le remplacer par rien. Cela n'affectera pas tes virgules suivies d'un espace et d'un mot.
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. sriviere Messages postés 879 Statut Membre 413
     
    Et pour la macro :

    With Selection.Find
    .Text = ", ([!a-z])"
    .Replacement.Text = ""
    .MatchWildcards = True
    End With
    0
  7. pseudo
     
    Visiblement ca ne marche pas (que ce soit l'une ou l'autre des methodes)
    0
  8. sriviere Messages postés 879 Statut Membre 413
     
    Hello,

    Je ne sais pas quoi te dire car quand je fais le chercher/remplacer et remplacer tout, avec les caractères génériques, sur mon ordi, ça fonctionne parfaitement !
    Il ne me reste que les virgules et les mots qui suivent, mais c'est dans la mesure où il y a un espace après la virgule bien sûr.

    Peut-être que tu n'as pas d'espace après ta virgule ?

    Dans ce cas-là, tu peux faire cela en deux temps :

    tu vas mettre un espace après toutes les virgules :

    Chercher : , (sans espace)
    Remplacer par : , (rajoute un espace après la virgule)

    Ensuite :

    Chercher : , ([!a-z]) (là tu vas mettre un espace après la virgule)
    Remplacer par : rien
    + et cocher les caractères génériques

    Ensuite, tu vas enlever tes deux espaces après la virgule pour le reste de ton tableau (décoche les caractères génériques) ainsi :

    Chercher : , (+ deux espaces)
    Remplacer : , (un espace)

    Ca devrait marcher !
    0
    1. sriviere Messages postés 879 Statut Membre 413
       
      Dans ton premier essai, tu as peut-être mis un espace après ([!a-z]), non ?
      0
  9. pseudo
     
    effectivement, je n'avais pas d'espace apres la virgule, mais je n'avais pas pensé à faire le
    Chercher : , (sans espace)
    Remplacer par : , (rajoute un espace après la virgule)

    ca marche là
    merci sriviere !
    0
  10. sriviere Messages postés 879 Statut Membre 413
     
    OK, c'est bien.
    Bonne fin d'après-m.
    0