Objet Selection (Word)

Représente la sélection en cours dans une fenêtre ou un volet. Une sélection représente une zone sélectionnée (ou mise en surbrillance) du document ou le point d'insertion si aucun élément n'est sélectionné. Chaque volet de fenêtre de document ne peut contenir qu’un seul objet Selection et un seul objet Selection peut être actif dans l’ensemble de l’application.

Important

Cette méthode a changé. L'utilisation de commandes de sélection VBA comme sur la sélection de Selection.BoldRunl'utilisateur avec Commentaires n'applique plus la mise en forme en gras sur le texte ou Selection.TypeTxtla commande sélectionnés par l'utilisateur ou sur la sélection de l'utilisateur avec Commentaires n'insère plus de texte.

Remarques

La méthode Selection permet de renvoyer l'objet Selection. Si aucun qualificateur d'objet n'est utilisé avec la propriété Selection, Microsoft Word renvoie la sélection à partir du volet actif de la fenêtre de document en cours. L'exemple suivant permet de copier la sélection actuelle du document actif.

Selection.Copy

L'exemple suivant permet de supprimer la sélection du troisième document de la collection Documents. Le document n'a pas à être actif pour avoir accès à sa sélection actuelle.

Documents(3).ActiveWindow.Selection.Cut

L’exemple suivant permet de copier la sélection du premier volet du document actif et de la coller dans le deuxième volet.

ActiveDocument.ActiveWindow.Panes(1).Selection.Copy 
ActiveDocument.ActiveWindow.Panes(2).Selection.Paste

La propriété Text est la propriété par défaut de l'objet Selection. Elle permet de définir ou de renvoyer le texte de la sélection en cours. L'exemple suivant permet d'attribuer le texte de la sélection en cours à la variable strTemp, en supprimant le dernier caractère s'il s'agit d'une marque de paragraphe.

Dim strTemp as String 
 
strTemp = Selection.Text 
If Right(strTemp, 1) = vbCr Then _ 
 strTemp = Left(strTemp, Len(strTemp) - 1)

L'objet Selection a différentes méthodes et propriétés qui vous permettent de réduire, de développer ou de modifier la sélection en cours. L’exemple suivant déplace le point d’insertion à la fin du document et sélectionne les trois dernières lignes.

Selection.EndOf Unit:=wdStory, Extend:=wdMove 
Selection.HomeKey Unit:=wdLine, Extend:=wdExtend 
Selection.MoveUp Unit:=wdLine, Count:=2, Extend:=wdExtend

L'objet Selection a différentes méthodes et propriétés qui vous permettent de modifier le texte sélectionné dans un document. L’exemple suivant sélectionne la première phrase dans le document actif et la remplace par un nouveau paragraphe.

Options.ReplaceSelection = True 
ActiveDocument.Sentences(1).Select 
Selection.TypeText "Material below is confidential." 
Selection.TypeParagraph

L'exemple suivant permet de supprimer le dernier paragraphe du premier document dans la collection Documents et de le coller au début du deuxième document.

With Documents(1) 
 .Paragraphs.Last.Range.Select 
 .ActiveWindow.Selection.Cut 
End With 
 
With Documents(2).ActiveWindow.Selection 
 .StartOf Unit:=wdStory, Extend:=wdMove 
 .Paste 
End With

L'objet Selection a différentes méthodes et propriétés qui vous permettent de modifier la mise en forme de la sélection en cours. L’exemple suivant modifie la police de la sélection actuelle de Times New Roman à Tahoma.

If Selection.Font.Name = "Times New Roman" Then _ 
 Selection.Font.Name = "Tahoma"

Les propriétés telles que Flags, Information et Type permettent de renvoyer des informations sur la sélection en cours. Vous pouvez utiliser l'exemple suivant de la procédure pour déterminer si un élément est sélectionné dans le document actif ; si ce n'est pas le cas, le reste de la procédure est ignoré.

If Selection.Type = wdSelectionIP Then 
 MsgBox Prompt:="You have not selected any text! Exiting procedure..." 
 Exit Sub 
End If

Même lorsqu'une sélection est réduite à un point d'insertion, elle n'est pas forcément vide. Par exemple, la propriété Text renvoie toujours le caractère à droite du point d'insertion ; ce caractère apparaît également dans la collection Characters de l'objet Selection. Toutefois, l'appel de méthodes telles que Cut ou Copy à partir d'une sélection réduite génère une erreur.

L’utilisateur peut sélectionner une région dans un document qui ne représente pas de texte contigu (par exemple, lorsqu’il utilise la touche ALT avec la souris). Comme le comportement d’une telle sélection peut être imprévisible, vous pouvez inclure une étape dans votre code qui vérifie la propriété Type d’une sélection avant d’effectuer des opérations dessus (Selection.Type = wdSelectionBlock).

De même, les sélections qui incluent des cellules de tableau peuvent également entraîner un comportement imprévisible. La propriété Information vous indique si une sélection est située au sein d’un tableau (Selection.Information(wdWithinTable) = True). L'exemple suivant permet de déterminer si une sélection est normale (par exemple, qu'il ne s'agit pas d'une ligne ou colonne d'une table, ni d'un bloc vertical de texte) ; vous pouvez l'utiliser pour tester la sélection en cours avant d'effectuer des opérations dessus.

If Selection.Type <> wdSelectionNormal Then 
 MsgBox Prompt:="Not a valid selection! Exiting procedure..." 
 Exit Sub 
End If

Comme les objets Range partagent de nombreuses méthodes et propriétés des objets Selection, l'utilisation d'objets Range est préférable dans le cadre de la manipulation d'un document quand il n'y a pas de raison de modifier physiquement la sélection en cours. Pour plus d’informations sur les objets Selection et Range, consultez Utilisation de l’objet Selection et Utilisation des objets Range.

Méthodes

Propriétés

Voir aussi

Assistance et commentaires

Avez-vous des questions ou des commentaires sur Office VBA ou sur cette documentation ? Consultez la rubrique concernant l’assistance pour Office VBA et l’envoi de commentaires afin d’obtenir des instructions pour recevoir une assistance et envoyer vos commentaires.