Written by Allen Wyatt (last updated December 27, 2023)
This tip applies to Word 2007, 2010, 2013, 2016, 2019, and Word in Microsoft 365
George would like to condense only the space between words in some text he selects in a document. He can change the point size of each space, one at a time. He can also do it by finding the space and replacing it with a space that is a smaller font size. However, he would like to decrease the size of the spaces step by step. (For example, 0.1 points in each step.)
It isn't possible to do exactly what George wants because Word only allows you to adjust font size in half-point increments, not tenth-point increments. If decrementing by a half-point at a time will do, then the best approach is to use a macro:
Sub StepSpaceFontSize() Dim F As Double Dim C As Long For C = 1 To Len(Selection) If Asc(Mid(Selection, C, 1)) = 32 Then F = Selection.Range.Characters(C).Font.Size If F > 5 Then Selection.Range.Characters(C).Font.Size = (F - 0.5) End If End If Next C End Sub
The macro steps through each character in whatever text is selected and, if the character is a space, decreases the point size of just that space. The macro enforces a bottom limit on font size, as it will only go down to 5 points.
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 (13717) applies to Microsoft Word 2007, 2010, 2013, 2016, 2019, and Word in Microsoft 365.
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!
VBA is great at working with both strings and numbers. At some point, you may have a number you need to convert to a ...
Discover MoreNeed to know what shortcut keys are defined? You can use a single macro command line to print out the definitions.
Discover MoreWhen creating macros, you might want to know if a user has made changes in the document or not. Here's how to figure that ...
Discover MoreFREE SERVICE: Get tips like this every week in WordTips, a free productivity newsletter. Enter your address and click "Subscribe."
2019-12-28 06:47:20
Ken Endacott
The macro must be executed for each 0.5 point reduction in space size. The following macro repeats the reductions until cancelled.
Sub StepSpaceSize()
Dim aRange As Range
Dim k As Long
Dim F As Single
Set aRange = Selection.Range
Do While MsgBox("Reduce all spaces in selection by 0.5 points", vbOKCancel) = vbOK
k = 1
Do
If aRange.Characters(k) = " " Then
F = aRange.Characters(k).Font.Size
aRange.Characters(k).Font.Size = F - 0.5
End If
k = k + 1
Loop Until k > Len(aRange.Text)
aRange.Select
Loop
End Sub
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 © 2025 Sharon Parq Associates, Inc.
Comments