Bonjour à tous.
J'ai une macro qui, dans un grand texte, supprime toutes les lignes se trouvant entre deux expressions ("ATT124")
Le problème est qu'à la fin du document, la boucle ne s'arrête pas et finit par tout me supprimer.
Comment-lui dire de s'arrêter lorsqu'il n'y a plus de texte?
Voici mon code :
Merci d'avance
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
17
18
19
20
21
22
23
24
25
26 Sub test() Dim i As Integer Selection.HomeKey Unit:=wdStory ' place le curseur en debut du document For i = 1 To 500 With Selection.Find .ClearFormatting .Text = "ATT124" .MatchWildcards = 0 .Forward = 1 .Replacement.Text = "" .Replacement.ClearFormatting .Execute ' recherche du mot1 Selection.MoveDown Unit:=wdParagraph, Count:=1 'déplacement à la ligne après le mot .Text = "ATT124" Selection.Extend ' etendre la selection .Execute ' atteindre le mot2 Selection.MoveLeft Unit:=wdCharacter, Count:=Len("wdParagraph") Selection.MoveUp Unit:=wdParagraph, Count:=1 Selection.Delete End With Next i End Sub![]()




Répondre avec citation





Partager