Recherche de bordures (Microsoft Word)
Word a une fonctionnalité très puissante qui vous permet de rechercher à peu près tout ce qui est sous le soleil. Une chose que vous ne pouvez pas rechercher, ce sont les limites des paragraphes, cependant. Par exemple, si vous souhaitez rechercher tous les paragraphes dont la bordure gauche est activée, vous ne pouvez pas le faire. Il existe cependant plusieurs façons de contourner ce problème.
La première solution de contournement consiste simplement à utiliser des styles pour mettre en forme vos paragraphes.
Si vous utilisez un style et que le style appelle une bordure à gauche sur un paragraphe, vous pouvez facilement rechercher des paragraphes utilisant ce style.
(La manière exacte dont vous recherchez les styles a été traitée dans d’autres numéros de WordTips.)
La deuxième solution de contournement possible consiste à effectuer votre recherche à l’aide d’une macro.
À l’aide d’une macro, vous pouvez facilement vérifier si des attributs de bordure sont définis pour un paragraphe. La macro suivante parcourt chacun des paragraphes d’un document. Lorsqu’il trouve un paragraphe dont l’un des attributs de bordure est défini, ce paragraphe est sélectionné et la macro s’arrête.
Sub SearchForBorders1() Dim k As Word.Paragraph Dim bFound As Boolean For Each k In ActiveDocument.Paragraphs bFound = False If k.Borders(wdBorderTop).LineStyle <> wdLineStyleNone _ Then bFound = True If k.Borders(wdBorderLeft).LineStyle <> wdLineStyleNone _ Then bFound = True If k.Borders(wdBorderBottom).LineStyle <> wdLineStyleNone _ Then bFound = True If k.Borders(wdBorderRight).LineStyle <> wdLineStyleNone _ Then bFound = True If bFound Then k.Range.Select Exit Sub End If Next k End Sub
Cette macro peut être très pratique si vous n’avez pas beaucoup de paragraphes avec des bordures. Pourquoi? Parce que la macro commence toujours la recherche à partir du début du document et ne trouvera par conséquent que le premier paragraphe avec une bordure définie.
Une approche macro différente peut être utilisée pour rechercher des bordures dans les paragraphes au-delà de celui dans lequel se trouve le point d’insertion. C’est exactement ce que fait la macro suivante: elle commence la recherche après le paragraphe actuel et s’arrête lorsqu’elle atteint un paragraphe dont l’un de ses attributs de bordure est défini. Notez que cette macro ne sélectionne pas le paragraphe entier; il déplace simplement le point d’insertion vers le paragraphe qui a une bordure définie.
Sub SearchForBorders2() Static a As Long, l As Long Dim b As Boolean Dim bd As Border Dim bds As Borders Dim prg As Paragraph Dim prgs As Paragraphs Dim re As Range Dim se As Selection Dim doc As Word.Document Set se = Selection Set re = se.Range Set doc = ActiveDocument If se.Start < l Then a = se.Start With doc.Content Set bds = .Borders re.Start = a re.End = .End End With For Each bd In bds b = bd = True If b Then Exit For Next If Not b Then Exit Sub Set prgs = re.Paragraphs For Each prg In prgs Set re = prg.Range If InStr(re.Text, Chr(13)) = 0 Then re.End = re.End + 1 End If Set bds = re.Borders For Each bd In bds b = bd = True If b Then Exit For Next If b Then a = re.Start se.Start = re.Start se.End = re.Start a = re.End l = se.Start Exit Sub End If Next a = 0 MsgBox "No more borders found" End Sub
_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 (9833) 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:
lien: / word-Searching_for_Borders [Recherche de bordures]
.