Je cherche le moyen de rechercher et remplacer une chaine de caractere je reussi a selectionner la chaine mais pas a la remplacer.
le code:
La chaine recherchee "toto" est selectionnee.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 vMSWord.OlePropertyGet("Selection").OlePropertyGet("Find").OleFunction("ClearFormatting"); vMSWord.OlePropertyGet("Selection").OlePropertyGet("Find").OlePropertyGet("Replacement").OleFunction("ClearFormatting"); vMSWord.OlePropertyGet("Selection").OlePropertyGet("Find").OlePropertySet("Text", "toto"); // texte que l'on veut remplacer vMSWord.OlePropertyGet("Selection").OlePropertyGet("Find").OlePropertyGet("Replacement").OlePropertySet("Text", "tata"); // texte qui va remplacer vMSWord.OlePropertyGet("Selection").OlePropertyGet("Find").OlePropertySet("Forward",true); vMSWord.OlePropertyGet("Selection").OlePropertyGet("Find").OlePropertySet("Wrap", 1); vMSWord.OlePropertyGet("Selection").OlePropertyGet("Find").OlePropertySet("Format", false); vMSWord.OlePropertyGet("Selection").OlePropertyGet("Find").OlePropertySet("MatchCase", false); vMSWord.OlePropertyGet("Selection").OlePropertyGet("Find").OlePropertySet("MatchWholeWord", false); vMSWord.OlePropertyGet("Selection").OlePropertyGet("Find").OlePropertySet("MatchWildcards", false); vMSWord.OlePropertyGet("Selection").OlePropertyGet("Find").OlePropertySet("MatchSoundsLike", false); vMSWord.OlePropertyGet("Selection").OlePropertyGet("Find").OlePropertySet("MatchAllWordForms", false); vMSWord.OlePropertyGet("Selection").OlePropertyGet("Find").OleProcedure("Execute");
Si je modifie la derniere ligne comme suit j'ai une erreur nom inconnu.
le code en VB:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 vMSWord.OlePropertyGet("Selection").OlePropertyGet("Find").OlePropertyGet("Execute").OleProcedure("Replace", 2);
Ca fait plusieurs jours que j'y suis et je n'y arrive pas, si quelqu'un a une idee? elle sera bien venue.
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 Selection.Find.ClearFormatting Selection.Find.Replacement.ClearFormatting With Selection.Find .Text = "toto" .Replacement.Text = "tata" .Forward = True .Wrap = wdFindContinue ' = 1 .Format = False .MatchCase = False .MatchWholeWord = False .MatchWildcards = False .MatchSoundsLike = False .MatchAllWordForms = False End With Selection.Find.Execute Replace:=wdReplaceAll ' = 2
Partager