Formatting Issues

How to Reduce Existing Character Spacing in Word with a Macro

Camila MilosovichCamila Milosovich Nov 2, 2026 868 views

Question details

The user wants to reduce existing character spacing in a Word document by a relative amount, ideally using a macro since standard commands only apply a fixed spacing value.

How to Reduce Existing Character Spacing in Word with a Macro
Product
Microsoft Word
Device & OS
not provided
Scenario
Adjusting text formatting where multiple different character spacing values exist and need to be relatively condensed.
Observed behavior
Word applies a fixed amount of condensed character spacing by default, lacking a standard button to relatively reduce spacing across text with mixed formatting.
Before you start

Before running any VBA macros, ensure you save a backup copy of your document, as macro changes cannot always be undone. Also, check if your text contains mixed formatting, which may require you to select specific paragraphs individually.

Solution 1Recommended

Create a VBA Macro for Relative Spacing Reduction

Write a VBA macro to iterate through selected text and decrease the Font.Spacing value by a relative point amount automatically.

A VBA macro is the most effective solution when you have text with mixed character spacing values (e.g., some text at -0.5 pts and some at -1.0 pts) and you want to reduce all of them by an additional relative amount.

1
Open the VBA Editor

Press Alt + F11 on your keyboard to launch the Microsoft Visual Basic for Applications editor.

2
Insert a New Module

Click on 'Insert' in the top menu and select 'Module' to create a blank script window.

3
Write the Macro

Create a script that loops through the characters in your Selection, checks their current Font.Spacing property, and subtracts your desired amount (for example, Selection.Font.Spacing = Selection.Font.Spacing - 0.5).

4
Run the Macro

Close the VBA editor, highlight the text you wish to modify in your document, and press Alt + F8 to select and run your new macro.

Create a VBA Macro for Relative Spacing Reduction
Testing Required: Always test the macro on a copied section of your document first. Mixed formatting within the same selection may occasionally cause the macro to return a null value for spacing.
Efficient Document Formatting

Easily Adjust Character Spacing with WPS Writer

WPS Writer offers an intuitive interface for adjusting font properties, including character spacing and kerning, ensuring your documents look professional. It is fully compatible with Microsoft Word formats and supports VBA macros in its advanced editions.

  1. 1. Open Document: Launch WPS Writer and open your target document.
  2. 2. Select Text: Highlight the paragraphs or characters you want to modify.
  3. 3. Access Font Settings: Right-click the highlighted text and select 'Font' from the context menu, or press Ctrl+D.
  4. 4. Apply Spacing: Go to the 'Character Spacing' tab, choose 'Condensed' in the Spacing drop-down, input your desired point value, and click OK.
Precise control over character spacing, scaling, and kerning.Seamless compatibility with Microsoft Word (.docx) formats.Clean, tabbed user interface for faster document formatting.Supports advanced macro execution for automated tasks.
microsoft office alternative - wps office

Frequently Asked Questions

Why can't I just use a standard Word button to reduce character spacing relatively?

Word does not feature a default button for relative character spacing reduction. The built-in commands apply a fixed target spacing value across the entire selection rather than mathematically subtracting a specific amount from the existing spacing.

What is the difference between condensed spacing and scaling?

Condensed spacing brings characters closer together by reducing the empty space between them measured in points, whereas scaling visually compresses or stretches the actual width of the characters themselves measured in percentages.

Does WPS Office support VBA macros?

Yes, premium versions of WPS Office support VBA macros, allowing you to run custom scripts for advanced document formatting and automation just like in Microsoft Word.

How do I fix mixed character spacing in a single paragraph?

Select the entire paragraph, open the Font dialog, and set the spacing to 'Normal' to reset all character spacing. Once unified, you can then apply your desired condensed or expanded spacing uniformly.