Written by Allen Wyatt (last updated August 13, 2020)
This tip applies to Word 2007, 2010, and 2013
Word allows you to create styles to define how the text in your document should appear. Besides a full list of built-in styles, Word allows you to create any custom styles that you may desire. You can later print a style sheet for your document, as described in other issues of WordTips.
What if you want a list of only custom styles, however? Word doesn't include a feature that allows you to discriminate on which styles are included in a style sheet printout. If you want a list of custom styles used in a document, you can create one by using a macro. The following macro steps through all the styles and compiles a list of those that meet both criteria (custom and being used): you can also read the ActivePrinter property
Sub PrintCustomStyles() Dim docThis As Document Dim styItem As Style Dim sUserDef(499) As String Dim iStyleCount As Integer Dim J As Integer ' Ref the active document Set docThis = ActiveDocument iStyleCount = 0 For Each styItem In docThis.Styles 'see if being used If styItem.InUse Then 'make sure not built in If Not styItem.BuiltIn Then iStyleCount = iStyleCount + 1 sUserDef(iStyleCount) = styItem.NameLocal End If End If Next styItem If iStyleCount > 0 Then ' Create the output document Documents.Add Selection.TypeText "User-defined Styles In Use" Selection.TypeParagraph For J = 1 To iStyleCount Selection.TypeText sUserDef(J) Selection.TypeParagraph Next J Selection.TypeParagraph Selection.TypeParagraph Else MsgBox "No custom styles in use." End If End Sub
Remember that there is a difference between "custom styles" and "customized styles." (A built-in style can be a customized style, if you change the default characteristics of the style.) This macro prints a list of custom styles; it completely ignores those styles that Word considers built in.
Note:
WordTips is your source for cost-effective Microsoft Word training. (Microsoft Word is the most popular word processing software in the world.) This tip (8339) applies to Microsoft Word 2007, 2010, and 2013. You can find a version of this tip for the older menu interface of Word here: Printing a List of Custom Styles.
Comprehensive VBA Guide Visual Basic for Applications (VBA) is the language used for writing macros in all Office programs. This complete guide shows both professionals and novices how to master VBA in order to customize the entire Office suite for their needs. Check out Mastering VBA for Office 2010 today!
If there are lots of hands that touch a document, there are lots of ways those hands can mess up the document. You may be ...
Discover MoreWhen you display the Home tab of the ribbon, Word shows a variety of styles in the Styles group. These are Style Sets, as ...
Discover MoreIf you are trying to limit what styles can and can't be used in a document, you might think a good approach is to store ...
Discover MoreFREE SERVICE: Get tips like this every week in WordTips, a free productivity newsletter. Enter your address and click "Subscribe."
2019-08-14 18:07:06
Jim Tortorelli
Is there a way to modify this to list the customized fonts?
2015-03-19 08:06:23
PS
macro fails at:
sUserDef(iStyleCount) = styItem.NameLocal
Got a version of Word that uses the ribbon interface (Word 2007 or later)? This site is for you! If you use an earlier version of Word, visit our WordTips site focusing on the menu interface.
Visit the WordTips channel on YouTube
FREE SERVICE: Get tips like this every week in WordTips, a free productivity newsletter. Enter your address and click "Subscribe."
Copyright © 2023 Sharon Parq Associates, Inc.
Comments