Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Word > VBA Word
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 25/05/2007, 15h09   #1
Invité de passage
 
Inscription : mai 2007
Messages : 1
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 1
Points : 0
Points : 0
Par défaut recherche dans une recherche

bonjour,

je souhaiterais modifier tous les caractères return par des shift+return dans un style particulier.
Le but étant mettre une balise en debut de style et une balise en fin de style même si le style contient des changements de paragraphe.

voici mon code :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
 
Private Function ReplaceStringComputer()
 
    ActiveDocument.Select
    With Selection.Find
        .Style = ActiveDocument.Styles("computer")
        .Text = ""
        .Format = True
        .MatchCase = False
        .MatchWholeWord = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
        .Forward = True
        .Wrap = wdFindContinue
        Do While .Execute
            With Selection
                .MoveEnd Unit:=wdCharacter, Count:=-1
                .Find.Text = "^13"
                .Find.Replacement.Text = "^11^11"
                .Find.Execute Replace:=wdReplaceAll
            End With
        Loop
    End With
End Function
le problème c'est que lorsque on arrive sur le find.execute replace il ne se termine pas sur la selection mais continu sur tout le texte.
nunux13 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/05/2007, 11h18   #2
Inactif
 
Avatar de ouskel'n'or
 
Inscription : février 2005
Messages : 12 466
Détails du profil
Informations forums :
Inscription : février 2005
Messages : 12 466
Points : 11 930
Points : 11 930
Commence par corriger ça :
Code :
1
2
3
4
5
6
7
8
    With Selection.Find
        .Style = ActiveDocument.Styles("t")
        .Text = ""
        .Format = True
        .Forward = True
        .Wrap = wdFindContinue
        .Execute
        Do While .Found = True
Après, je ne comprends pas ton code, là
Code :
1
2
3
4
5
6
7
8
        Do While .Execute
            With Selection
                .MoveEnd Unit:=wdCharacter, Count:=-1
                .Find.Text = "^13"
                .Find.Replacement.Text = "^11^11"
                .Find.Execute Replace:=wdReplaceAll
            End With
        Loop
Tu trouves le style,
tu le sélectionnes en te replaçant à la fin - 1 car.
tu recherches le vbcr suivant... que tu souhaites remplacer
mais là, la sélection a changé et concerne le text trouvé -1 caractère
Alors une question à la fois :
Quelles balises souhaites-tu mettre en début et en fin de "style" ? (si c'est bien ça que tu veux faire)
A+
ouskel'n'or est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 03h56.


 
 
 
 
Partenaires

Hébergement Web