1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
|
Sub CreationDesSignetsReq()
Dim DocEnCours As Document
Dim I As Integer, NbSignets As Integer, ParagrapheDebut As Integer
Set DocEnCours = ActiveDocument
With DocEnCours
' Recherche du tableau des renvois (en supposant qu'il n'y ait qu'un seul tableau dans le document)
'--------------------------------------------------------------------------------------------------
.Tables(1).Range.Select
Selection.HomeKey unit:=wdStory, Extend:=wdExtend
ParagrapheDebut = Selection.Paragraphs.Count - .Tables(1).Range.Paragraphs.Count
' Recherche du dernier signet de type REQ
'----------------------------------------
NbSignets = 0
For I = 1 To .Bookmarks.Count
With .Bookmarks(I)
If Mid(.Name, 1, Len("SignetReq")) = "SignetReq" Then NbSignets = NbSignets + 1
End With
Next I
' Création des signets
'---------------------
For I = 1 To ParagrapheDebut
With .Paragraphs(I)
If .Range.Bookmarks.Count = 0 And UCase(Mid(DocEnCours.Paragraphs(I).Range.Text, 1, 3)) = "REQ" Then
NbSignets = NbSignets + 1
.Range.Select
DocEnCours.Bookmarks.Add Name:="SignetReq" & NbSignets
End If
End With
Next I
End With
Set DocEnCours = Nothing
End Sub |
Partager