Please Note: This article is written for users of the following Microsoft Word versions: 97, 2000, 2002, and 2003. If you are using a later version (Word 2007 or later), this tip may not work for you. For a version of this tip written specifically for later versions of Word, click here: Only Showing Readability Statistics.
Written by Allen Wyatt (last updated December 21, 2019)
This tip applies to Word 97, 2000, 2002, and 2003
When you do a grammar check on your document, the very last step performed by Word is to display a set of readability statistics that you can use to analyze the presentation of your content. There may be times when you want to only display the readability statistics, without going through the complete grammar check first. Unfortunately, Word does not provide a way to do this. You can, however, create a macro that will display the readability statistics quite nicely. The heart of such a macro would be the ReadabilityStatistics collection.
To get an idea how such a macro could be written, consider the following single-line macro:
Sub CheckTest()
MsgBox ActiveDocument.Content.ReadabilityStatistics(9).Value
End Sub
This macro displays a number that represents the Flesch Reading Ease value, ninth member of the ReadabilityStatistics collection. There are 10 individual elements in the collection, as follows:
| Index | Meaning | |
|---|---|---|
| 1 | Words | |
| 2 | Characters | |
| 3 | Paragraphs | |
| 4 | Sentences | |
| 5 | Sentences per Paragraph | |
| 6 | Words per Sentence | |
| 7 | Characters per Word | |
| 8 | Passive Sentences | |
| 9 | Flesch Reading Ease | |
| 10 | Flesch-Kincaid Grade Level |
To display all ten statistics (as would be done in a complete grammar check of your document), all you need to do is have your macro step through the various members of the collection and display their values. The following macro does just that:
Sub Readability()
Dim DocStats As String
Dim MBTitle As String
Dim J As Integer
MBTitle = "Readability Statistics"
DocStats = ""
With ActiveDocument.Content
For J = 1 to 10
DocStats = DocStats & .ReadabilityStatistics(J)
DocStats = DocStats & ": "
DocStats = DocStats & .ReadabilityStatistics(J).Value
DocStats = DocStats & vbCrLf
Next J
End With
MsgBox DocStats, vbOKOnly, MBTitle
End Sub
When you run the macro, understand that it takes a bit of time to run. In fact, depending on the speed of your system, the length of your document, and its complexity, it can take quite a bit of time to run. Be patient; once the ten statistics are completed, they are displayed on the screen.
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 (1784) applies to Microsoft Word 97, 2000, 2002, and 2003. You can find a version of this tip for the ribbon interface of Word (Word 2007 and later) here: Only Showing Readability Statistics.
Create Custom Apps with VBA! Discover how to extend the capabilities of Office 365 applications with VBA programming. Written in clear terms and understandable language, the book includes systematic tutorials and contains both intermediate and advanced content for experienced VB developers. Designed to be comprehensive, the book addresses not just one Office application, but the entire Office suite. Check out Mastering VBA for Microsoft Office 365 today!
Like many things in Word, you can configure the way the spelling checker does its job. If you want to exercise more ...
Discover MoreWhen you are typing in a document, Word normally checks your spelling in the background, marking possible spelling errors ...
Discover MoreWhen you perform a spelling check, Word typically checks everything in your document. If you want to limit what is ...
Discover MoreFREE SERVICE: Get tips like this every week in WordTips, a free productivity newsletter. Enter your address and click "Subscribe."
2020-03-31 05:24:51
Harry
A safer formulation of the macro would be:
Sub Readability()
Dim DocStats As String
DocStats = ""
For Each stat In ActiveDocument.Content.ReadabilityStatistics
DocStats = DocStats & stat.Name & " : " & stat.Value & vbCrLf
Next stat
MsgBox DocStats, vbOKOnly, "Readability Statistics"
End Sub
Got a version of Word that uses the menu interface (Word 97, Word 2000, Word 2002, or Word 2003)? This site is for you! If you use a later version of Word, visit our WordTips site focusing on the ribbon 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 © 2025 Sharon Parq Associates, Inc.
Comments