Quelqu'un sait-il comment modifier le texte d'un objet Word.Range tout en conservant son format ? Par exemple, si j'ai "this texte " et je le change en "que txt ",
Je cherche un moyen de modifier l'ensemble du texte de la plage, et pas seulement un seul mot. Comme je reçois le nouveau texte d'une API indépendante, je peux supposer que le nouveau texte et l'ancien texte ont le même nombre de mots.
C'est ce que j'ai obtenu jusqu'à présent :
for (int i = 0; i < oldWords.Length; i++)
{
if (oldWords[i] == newWords[i])
continue;
object Replace = WdReplace.wdReplaceOne;
object FindText = oldWords[i];
object ReplaceWith = newWords[i];
var success = Sentence.Find.Execute(parameters stub);
}
Mais pour une raison quelconque, elle ne réussit qu'à la première exécution, car la sélection de la plage reste sur le mot trouvé.
Edit : je l'ai eu, après chaque exécution, j'ai dû restaurer la position finale originale de mon Range.
Merci.