Drucken eines vollständigen Stylesheets (Microsoft Word)
Dave würde es lieben, ein Stylesheet mit vollem Funktionsumfang für seine Dokumente zu drucken. Er weiß, dass er im Dialogfeld „Drucken“ „Stile“ drucken kann, möchte jedoch lieber ein Stylesheet haben, in dem die tatsächlichen Stile wie Farbe, Größe, Schriftart usw. angezeigt werden.
Leider gibt es in Word keine solche Funktion. Sie können jedoch mithilfe eines Makros ein Stylesheet nach Ihren Wünschen erstellen. Im Folgenden werden beispielsweise die Namen aller im Dokument verfügbaren Stile in das aktuelle Dokument eingefügt. Jeder Stilname steht in einer eigenen Zeile (Absatz) und wird mit den verschiedenen Stilen formatiert.
Sub ListStyleNames() Dim s As Style For Each s In ActiveDocument.Styles With Selection .Style = s .TypeText (s.NameLocal) .TypeParagraph End With Next s End Sub
Ein solcher Ansatz ist zwar praktisch für eine übersichtliche Liste von Stilen, aber nicht viel informativer als das, was mit der Bezeichnung „Stile“ im Dialogfeld „Drucken“ gedruckt werden kann. Es bietet jedoch eine Grundlage, auf der aufgebaut werden kann, um ein umfassenderes Stylesheet zu erstellen.
Das Problem beim Erstellen eines detaillierten Stylesheets mithilfe von Makros besteht darin, dass Stile eine Menge Informationen enthalten können. Das von Word verwendete Objektmodell (auf das in VBA zugegriffen werden kann) wird beim Testen von Stilen schnell recht komplex, um festzustellen, was sie enthalten. Hier ist nur ein einfaches Beispiel, um Ihnen den Geschmack zu geben:
Sub SimpleStyleSheet() Dim s As Style Dim sOutput As String Dim sTemp As String Dim StyleTypes(4) As String StyleTypes(1) = "Paragraph" StyleTypes(2) = "Character" StyleTypes(3) = "Table" StyleTypes(4) = "List" For Each s In ActiveDocument.Styles sOutput = s.NameLocal & vbCrLf sOutput = sOutput & " Style type: " & StyleTypes(s.Type) & vbCrLf sTemp = s.BaseStyle If Len(sTemp) > 0 Then sOutput = sOutput & " Based on: " & s.BaseStyle & vbCrLf End If sOutput = sOutput & " Font: " & s.Font.Name sTemp = "" If s.Font.Bold Then sTemp = sTemp & "Bold, " If s.Font.Italic Then sTemp = sTemp & "Italic, " If Len(sTemp) > 0 Then sTemp = Left(sTemp, Len(sTemp) - 2) sOutput = sOutput & " (" & sTemp & ")" End If sOutput = sOutput & vbCrLf & vbCrLf Selection.TypeText (sOutput) Next s End Sub
Das einzige, was dieses Makro tut, ist, alle Stile aufzulisten, welche Art von Stilen sie sind, ob sie auf einem anderen Stil basieren (und wenn ja, wie dieser Stil benannt ist), welche Schriftart vom Stil verwendet wird und ob Die Schrift ist fett oder kursiv. Jeder, der mit Stilen vertraut ist, wird sofort verstehen, dass diese wenigen Elemente nur eine kleine Auswahl dessen sind, was innerhalb eines Stils definiert werden kann. Das Überprüfen aller möglichen Stilformate und das Drucken im Stylesheet würde das Makro in der Tat sehr lang machen.
Trotzdem kann dieses Makro nützlich sein, da es eine Vorstellung davon gibt, wie Sie Ihr eigenes Stylesheet zusammenstellen können. Sie müssen nur herausfinden, was Sie im Stylesheet sehen möchten, und dann den Makrocode hinzufügen, um diese Informationen zu ermitteln und auszudrucken.
_Hinweis: _
Wenn Sie wissen möchten, wie die auf dieser Seite (oder auf einer anderen Seite der WordTips-Websites) beschriebenen Makros verwendet werden, habe ich eine spezielle Seite vorbereitet, die hilfreiche Informationen enthält.
WordTips ist Ihre Quelle für kostengünstige Microsoft Word-Schulungen.
(Microsoft Word ist die weltweit beliebteste Textverarbeitungssoftware.) Dieser Tipp (13365) gilt für Microsoft Word 2007, 2010, 2013, 2016, 2019 und Word in Office 365. Eine Version dieses Tipps finden Sie für ältere Menüoberfläche von Word hier: