Remplacer une chaine (variable) délimitée

Signaler
Messages postés
2
Date d'inscription
lundi 21 juillet 2008
Statut
Membre
Dernière intervention
21 juillet 2008
-
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
-
Bonjour

Problème dans Word, je voudrais faire une macro qui me permette d'effacer des chaines de caractères.

Ces chaines sont variables en longueur mais elles sont toujours délimitées par un (dièse) # au début et à la fin.

Pouvez-vous m'aider ? Je suis assez novice dans ce domaine. J'ai cherché dans l'existant mais je n'ai rien trouvé

Merci d'avance.

Patrice

4 réponses

Messages postés
584
Date d'inscription
jeudi 28 décembre 2006
Statut
Membre
Dernière intervention
29 avril 2010
1
InStr([start = > le dernier # recuperer ou 0 pour le premier caret], "ton text" , "#")

Modifie les valeur en bleu par les valeur désirées

<hr size ="2" width="100%" />  zen69 aka Ortho Le Profett
  [site web]
Messages postés
2
Date d'inscription
lundi 21 juillet 2008
Statut
Membre
Dernière intervention
21 juillet 2008

Merci,

Mais je suis une vraie buse, dans Word 2007, dans les options de remplacement on peut cocher une case dans Remplacer.. Plus "Utiliser les caractères génériques".

Donc j'ai fait un enregistrement de macro à partir de ça. Et voilà ce que ça donne.

Sub Supp_Fusion_Vide()
'
' Supp_Fusion_Vide Macro
'
'


    Selection.HomeKey Unit:=wdStory
    Selection.Find.ClearFormatting
    Selection.Find.Replacement.ClearFormatting
    With Selection.Find
        .Text = "###*###"
        .Replacement.Text = " "
        .Forward = True
        .Wrap = wdFindContinue
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchAllWordForms = False
        .MatchSoundsLike = False
        .MatchWildcards = True
    End With
    Selection.Find.Execute Replace:=wdReplaceAll
End Sub

Et voilou   mais merci quand même.
Messages postés
584
Date d'inscription
jeudi 28 décembre 2006
Statut
Membre
Dernière intervention
29 avril 2010
1
Ah bon... je savais pas que word acceptais ce genre de recherche : "###*###"

Alors, c'est toi qui pose la question et c'est moi qui apprend... genial! :P

<hr size="2" width="100%" />  zen69 aka Ortho Le Profett
  [site web]
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
46
salut,

montre nous un exemple concret de chaîne avant et ce que tu veux après
parce que si çà commence et fini par "#" et que tu veux supprimer le contenu, çà revient simplement à attribuer "##" ;)

ps : tu as classé en VB6
<li> Vous êtes ici : [infomsg.aspx Thèmes] / [infomsgf_VISUAL-BASIC_1.aspx Visual Basic 6] / [infomsgt_DIVERS_220.aspx Divers] / [infomsgt_GENERAL_222.aspx General] / Remplacer une chaine (variable) délimitée</li>
macro = VBA
thème topic déplacé
<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp