Vérification de la longueur de la sélection de texte (Microsoft Word)
Lorsque vous écrivez des macros, vous devez souvent déterminer si l’utilisateur a effectué une sélection. Il existe de nombreuses façons de le faire dans une macro. Le code suivant illustre une méthode possible pour y parvenir dans VBA. Il définit la valeur d’un indicateur, bInSelection, sur True s’il y a actuellement une sélection. Sinon, bInSelection est défini sur False.
Dim bInSelection As Boolean bInSelection = False If Selection.Type=wdSelectionIP Then bInselection=True End If
Vous pourriez vous demander si vous pourriez utiliser une approche pour vérifier si la longueur de la sélection est supérieure à zéro, comme dans cette méthode:
Dim bInSelection As Boolean bInSelection = False If Len(Selection) > 0 Then bInselection=True End If
Cette approche ne fonctionnera pas. La raison en est que lorsqu’aucune sélection n’est effectuée (le point d’insertion est réduit et clignote juste), Word renvoie toujours une longueur de sélection de 1. Cela est un peu aggravant car il n’a aucun sens logique. Ainsi, vous devez vérifier la propriété Type de l’objet Selection, comme dans le premier exemple ci-dessus. Si vous souhaitez le raccourcir encore plus, vous pouvez utiliser ce qui suit:
Dim bInSelection As Boolean bInselection=(Selection.Type=wdSelectionIP)
_Note: _
Si vous souhaitez savoir comment utiliser les macros décrites sur cette page (ou sur toute autre page des sites WordTips), j’ai préparé une page spéciale qui comprend des informations utiles.
lien: / wordribbon-WordTipsMacros [Cliquez ici pour ouvrir cette page spéciale dans un nouvel onglet de navigateur]
.
WordTips est votre source pour une formation Microsoft Word rentable.
(Microsoft Word est le logiciel de traitement de texte le plus populaire au monde.) Cette astuce (12175) s’applique à Microsoft Word 2007, 2010, 2013, 2016, 2019 et Word dans Office 365. Vous pouvez trouver une version de cette astuce pour le ancienne interface de menu de Word ici:
link: / word-Checking_for_a_Text_Selection_Length [Vérification d’une longueur de sélection de texte]
.