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 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132
| Private Sub DebugStyles(ByVal myDocument As Word.Document)
Dim myStyle As Word.Style
'Dim myDocRange As Word.Range
'Dim myTextRange As Word.Range
Dim lngCompteur As Long
'TYPE DES STYLES:
'wdStyleTypeCharacter = 2
'wdStyleTypeLinked = 6
'wdStyleTypeList = 4
'wdStyleTypeParagraph = 1
'wdStyleTypeParagraphOnly = 5
'wdStyleTypeTable = 3
'Styles personnalisés
Print #1, "------------------------------------"
Print #1, "---> DebugStyles - Styles BuiltOut - " & VBA.DateTime.Time
Print #1, "------------------------------------"
lngCompteur = 0
Print #1, "Les styles personnalisés sont :"
For Each myStyle In myDocument.Styles
If Not myStyle.BuiltIn Then
lngCompteur = lngCompteur + 1
Print #1, myStyle.NameLocal & Chr(9) & myStyle.Description
Print #1, " BuiltIn-Type = " & myStyle.BuiltIn & " - " & myStyle.Type
Print #1, " Locked-Priority = " & myStyle.Locked & " - " & myStyle.Priority
Print #1, " InUse = " & myStyle.InUse
'Attention ERREUR pour les type 2
'Print #1, "DebugStyles " _
& " FirstLineIndent " & myStyle.ParagraphFormat.FirstLineIndent _
& " LeftIndent " & myStyle.ParagraphFormat.LeftIndent _
& " RightIndent " & myStyle.ParagraphFormat.RightIndent
'Attention ERREUR pour les type 2
'Print #1, " Linked = " & myStyle.Linked
End If
Next myStyle
Print #1, "Total = " & myDocument.Styles.Count & " styles dont " & VBA.Conversion.CStr(lngCompteur) & " styles BuiltOut"
lngCompteur = 0
Print #1, "Les styles personnalisés utilisés sont (attention! Styles personnalisés de Type 1 non détectés dans le texte):"
For Each myStyle In myDocument.Styles
If Not myStyle.BuiltIn Then
With myDocument.Content
.Find.ClearFormatting
.Find.Style = myDocument.Styles(myStyle)
.Find.Text = "^?"
.Find.Format = True
If .Find.Execute() Then
lngCompteur = lngCompteur + 1
Print #1, "BuiltIn " & myStyle.BuiltIn & " Type " & myStyle.Type & " Style utilisé: " & myStyle.NameLocal
End If
End With
End If
Next myStyle
Print #1, "Total = " & VBA.Conversion.CStr(lngCompteur) & " styles utilisés (attention! Styles personnalisés de Type 1 non détectés dans le texte)"
'
' lngCompteur = 0
' Print #1, "Les styles appliqués aux mots sont :"
' For Each myStyle In myDocument.Styles
' myDocument.Select
' Selection.HomeKey unit:=wdStory
' With Selection.Find
' .ClearFormatting
' .Style = myDocument.Styles(myStyle)
' .Forward = True
' .Format = True
' .Text = "" 'Use an empty string ("") to search for formatting only
' If .Execute() Then
' lngCompteur = lngCompteur + 1
' Print #1, "BuiltIn " & myStyle.BuiltIn & " Style appliqué à un mot: " & myStyle.NameLocal
' End If
' End With
' Next myStyle
' Print #1, "Total = " & VBA.Conversion.CStr(lngCompteur) & " styles appliqués aux mots"
' lngCompteur = 0
' Print #1, "Les styles appliqués aux mots sont :"
' For Each myStyle In myDocument.Styles
' 'If Not myStyle.BuiltIn Then
' Set myDocRange = myDocument.Range(Start:=0, End:=Selection.End)
' myDocRange.WholeStory
' For Each myTextRange In myDocRange.Words
' With myTextRange.Find
' .ClearFormatting
' .Style = myDocument.Styles(myStyle)
' .Format = True
' .Text = "" 'Use an empty string ("") to search for formatting only
' If .Execute() Then
' lngCompteur = lngCompteur + 1
' Print #1, "BuiltIn " & myStyle.BuiltIn & " Style appliqué à un mot: " & myStyle.NameLocal
' Exit For
' End If
' End With
' Next myTextRange
' 'End If
' Next myStyle
' Print #1, "Total = " & VBA.Conversion.CStr(lngCompteur) & " styles appliqués aux mots"
' lngCompteur = 0
' Print #1, "Les styles appliqués aux mots sont (2):"
' For Each myStyle In myDocument.Styles
' myDocument.Select
' Selection.HomeKey unit:=wdStory
' With Selection.Find
' .ClearFormatting
' .Style = myDocument.Styles(myStyle)
' .Forward = True
' .Format = True
' .Text = ""
' If .Execute() Then
' lngCompteur = lngCompteur + 1
' Print #1, "BuiltIn " & myStyle.BuiltIn & " Style appliqué à un mot: " & myStyle.NameLocal
' End If
' End With
' Next myStyle
' Print #1, "Total = " & VBA.Conversion.CStr(lngCompteur) & " styles appliqués aux mots"
'
'Dim myR As Range
'
'Set myR = ActiveDocument.StoryRanges(wdMainTextStory)
'myR.Find.Execute FindText:="moi"
'Libération mémoire
' Set myTextRange = Nothing
' Set myDocRange = Nothing
Set myStyle = Nothing
Print #1, "DebugStyles - Fin de traitement."
End Sub |
Partager