Comment : réduire des plages ou des sélections dans des documents
Mise à jour : novembre 2007
S'applique à |
---|
Les informations de cette rubrique s'appliquent uniquement aux projets Visual Studio Tools pour Office et versions de Microsoft Office spécifiés. Type de projet
Version de Microsoft Office
Pour plus d'informations, consultez Fonctionnalités disponibles par type d'application et de projet. |
Si vous travaillez avec un objet Range ou Selection, vous pouvez remplacer la sélection par un point d'insertion avant d'insérer du texte afin d'éviter de remplacer le texte existant. Les objets Range et Selection ont une méthode Collapse qui utilise les valeurs d'énumération WdCollapseDirection :
wdCollapseStart : réduit la sélection au début de la sélection. Il s'agit de la valeur par défaut lorsque vous ne spécifiez pas de valeur d'énumération.
wdCollapseEnd : réduit la sélection à la fin de la sélection.
Pour réduire une plage et insérer un nouveau texte
Créez un objet Range constitué du premier paragraphe du document.
L'exemple de code suivant peut être utilisé dans une personnalisation au niveau du document.
Dim rng As Word.Range = Me.Paragraphs(1).Range
Word.Range rng = this.Paragraphs[1].Range;
L'exemple de code suivant peut être utilisé dans un complément d'application. Ce code utilise le document actif.
Dim rng As Word.Range = Me.Application.ActiveDocument.Paragraphs(1).Range
Word.Range rng = this.Application.ActiveDocument.Paragraphs[1].Range;
Utilisez la valeur d'énumération wdCollapseStart pour réduire la plage.
rng.Collapse(Word.WdCollapseDirection.wdCollapseStart)
object direction = Word.WdCollapseDirection.wdCollapseStart; rng.Collapse(ref direction);
Insérez le nouveau texte.
rng.Text = " New Text "
rng.Text = " New Text ";
Sélectionnez la Range.
rng.Select()
rng.Select();
Si vous utilisez la valeur d'énumération wdCollapseEnd, le texte est inséré au début du paragraphe suivant.
rng.Collapse(Word.WdCollapseDirection.wdCollapseEnd)
direction = Word.WdCollapseDirection.wdCollapseEnd;
rng.Collapse(ref direction);
On pourrait s'attendre à ce que l'insertion d'une nouvelle phrase se fasse avant la marque de paragraphe, mais ce n'est pas le cas puisque celle-ci est incluse dans la plage d'origine. Pour plus d'informations, consultez Comment : exclure les marques de paragraphe lors de la création de plages.
Exemple de personnalisation au niveau du document
Pour réduire une plage dans une personnalisation au niveau du document
L'exemple suivant affiche la méthode complète correspondant à la personnalisation au niveau du document. Pour utiliser ce code, exécutez-le dans votre projet à partir de la classe ThisDocument.
Dim rng As Word.Range = Me.Paragraphs(1).Range rng.Collapse(Word.WdCollapseDirection.wdCollapseStart) rng.Text = " New Text " rng.Select()
Word.Range rng = this.Paragraphs[1].Range; object direction = Word.WdCollapseDirection.wdCollapseStart; rng.Collapse(ref direction); rng.Text = " New Text "; rng.Select();
Exemple de complément d'application
Pour réduire une plage dans un complément d'application
L'exemple suivant affiche la méthode complète correspondant à un complément d'application. Pour utiliser ce code, exécutez-le à partir de la classe ThisAddIn dans votre projet.
Dim rng As Word.Range = Me.Application.ActiveDocument.Paragraphs(1).Range rng.Collapse(Word.WdCollapseDirection.wdCollapseStart) rng.Text = " New Text " rng.Select()
Word.Range rng = this.Application.ActiveDocument.Paragraphs[1].Range; object direction = Word.WdCollapseDirection.wdCollapseStart; rng.Collapse(ref direction); rng.Text = " New Text "; rng.Select();
Voir aussi
Tâches
Comment : insérer du texte dans les documents Word
Comment : définir et sélectionner des plages dans les documents
Comment : récupérer les caractères de début et de fin dans les plages
Comment : exclure les marques de paragraphe lors de la création de plages