
Tips.Net > WordTips Home > Tools > Spelling and Grammar Checking > Only Showing Readability Statistics
Summary: Perform a grammar check, and Word displays some statistics that represent an analysis of your words. By writing a macro you can access these statistics and display whatever part of them you want. (This tip works with Microsoft Word 97, Word 2000, Word 2002, Word 2003, and Word 2007.)
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.
Tip #1784 applies to Microsoft Word versions: 97 2000 2002 2003 2007
Take Control! Master the real power behind Word! Successfully master the secrets of powerful formatting and create documents that stand out from the rest. Best of all, you can create documents that are easy to maintain and quick to change.
Check out WordTips: Sytles and Templates today!
Add power to your purpose with Word. A comprehensive 480+ page e-book explains everything you need to know about macros. (more information...)
Ask a Word Question
Make a Comment
Bugs and Pests Tips
ExcelTips
Family Tips
Health Tips
Home Tips
Organizing Tips
WordTips