Partager via


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

  • Projets au niveau du document

  • Projets au niveau de l'application

Version de Microsoft Office

  • Word 2003

  • Word 2007

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

  1. 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;
    
  2. 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); 
    
  3. Insérez le nouveau texte.

    rng.Text = " New Text "
    
    rng.Text = " New Text ";
    
  4. 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

Comment : étendre des plages dans des documents

Comment : réinitialiser des plages dans les documents Word