Fix corrupted font in multi level list in Word

7,944

Solution 1

Quick context

  • In applications like Word, there are lots of global settings that deal with things like layout and appearance. This is not accomplished by embedding control characters at each relevant location in the document content, itself. Rather, the user choices are stored as centralized settings, and these are applied to the whole document programmatically based on rules.

  • The application gives you a nice graphical user interface for dealing with the settings, like the menus and setting selection tools shown in the question. However, that isn't what is stored as part of the document. The software produces that display from setting values that are stored in an efficient way with the document.

  • The settings that drive these rules are stored separately from the document content. I'll call that the document infrastructure.

  • Because the settings can be stored in compact form, a small amount of corruption can affect many different rules and many different parts of your document. However, the error symptoms can be diagnostic.

Diagnostics

There are several characteristics that point to corruption, rather than incorrect user settings that can be fixed by just entering the right value in a menu.

  • You may see multiple nonsensical problems, particularly in a related collection of settings.

  • You can't change the settings, or changing the settings doesn't stick.

  • The user interface forces you to select from preset values or enter values that comply with validation rules. So there is no way for you to manually enter non-compliant values. In this example, you see things like a 0 point font size (which can't be selected from the list). That symbol in the number format entry box isn't something you keyed in. Even more telling is if that is something you can't directly manipulate or delete. Even more telling is if it's a symbol that is not a standard keyboard character.

Fixing the corruption

  • You're dealing with a created representation of some stored values, rather than directly manipulating the document content. So you can only change things the user interface allows you to. If the user interface can't make sense of the corrupted values, you can't directly fix them.

  • The user interface may not behave logically relative to what is displayed when it is dealing with corruption.

  • You may not be seeing all of the problems. The user interface displays what it can within the limits of what it was programmed to do. Some corrupted values may be things that will show up as oddities. Others may be things that aren't, or can't be, displayed. Still others may be artifacts of something different. So there's no way to know the extent of the corruption (you don't know what you don't know).

  • The safe solution is to clear it and redo it rather than trying to fix what looks like specific displayed problems.

  • The fact that the document infrastructure is stored separately can be a benefit in the fix. If the corruption is in the infrastructure and the document content is intact, you may be able to replace the infrastructure.

    Create a new (empty) document using the same template as the corrupted one. Go into the corrupted document, select the whole document, and copy it. Paste that into the new document. If it's a humongous document, you might need to do this in several chunks rather than a single copy/paste.

    This will often give you a working document, again. Verify that all of your settings transferred to the new document. You might need to re-enter a few, but at least you will have a functioning user interface and will be able to do that.

Solution 2

Screenshoot from VBA

I found one solution, very simple.

  • step 1: press "Ctrl + f11" (this step is to open VBA)
  • step 2: delete the "Option Explicit" (this step is important, if you keep "Option Explicit, you will get error when hit "F5")
  • step 3: copy and paste the code here:
Sub ResetFontFormatsForLists()
For Each templ In ActiveDocument.ListTemplates

     For Each lev In templ.ListLevels

          lev.Font.Reset

     Next lev

Next templ
End Sub
  • Step 4: hit "F5" to run the code.

  • Step 5: Enjoy and smile.

I learned this from this source: https://answers.microsoft.com/en-us/msoffice/forum/all/word-2013-multilevel-list-error/c606fc3e-bc30-4590-8e4b-9bfea7312d67

enter image description here

Share:
7,944

Related videos on Youtube

Máté Juhász
Author by

Máté Juhász

Updated on September 18, 2022

Comments

  • Máté Juhász
    Máté Juhász over 1 year

    I've a multi level list defined in Word 2013.

    It's level 4 is corrupted and looks strange (all other levels are fine):

    enter image description here (it should be "1.1. level 4 list item", but "1.1." is just masked)

    In "define new multilevel list" window it's sample is already strange, it just shows as a small line at the left-top corner of the text box (see text box left from "font"), while it's sample in the list looks fine:

    enter image description here

    Opening "font" properties from "define new multilevel list" window I can see that it has font size 0.

    enter image description here

    However, even after fixing font size (and also re-selecting all values just to be sure), I can't approve changes by pressing OK, neither go to advanced tab as I'm getting this error message:

    enter image description here

    I can close the window only by pressing Cancel. As it's a multilevel list, I can't easily select part of it, format as needed, then change the style to match formatting.

    I've also tried with a macro:

    • Font.reset didn't help
    • Font.Size is 0; .Position, .Scaling & .Spacing are all 9999999, but setting them to a valid value (12, 0, 100, 1 respectively) doesn't do anything at all (no error message, but also no improvement).

    How can I fix this font without recreating the whole list style?

    • Máté Juhász
      Máté Juhász almost 8 years
      @fixer1234 please see my clarification
    • fixer1234
      fixer1234 almost 8 years
      Is it just the list numbering that's messed up (the text is displaying as intended)?
    • Máté Juhász
      Máté Juhász almost 8 years
      yes, only the numbering which is wrong, text is correct
    • Máté Juhász
      Máté Juhász almost 8 years
      It's already defined and it's fine, I've issue only with level 4.
    • fixer1234
      fixer1234 almost 8 years
      Usually when you get odd characters in a text entry box that aren't standard keyboard characters, and you can't simply delete the character, it's diagnostic of corruption. In that case, you don't know the extent of what's corrupted, and you can't diagnose the problem in the normal way (the strange font setting is probably just another artifact). Things don't behave logically according to what's displayed in settings, so the safe solution is to clear it and redo it. One thing to try if practical is to select the whole document, copy it, and paste it into a new document.
    • Máté Juhász
      Máté Juhász almost 8 years
      Thanks @fixer1234! Copying whole document to an empty while with the correct template has solved the issue!
  • Rakward
    Rakward over 4 years
    Thank you so much for this, worked perfectly. Though in my Word 2019 I didn't see an "Option Explicit" but it still worked.
  • David Balažic
    David Balažic over 3 years
    On some versions of Word (mine is 2019) the key to open VBA editor is alt-F11, not ctrl-F11
  • user1156544
    user1156544 over 2 years
    This saved my life!