How to update ALL fields in a document at once--caption numbers in text boxes and the text layer, headers and footers.

Anonymous
2010-03-13T02:21:19+00:00

My title just about says it--all of my  all.  I'm working on a long document; all of my inserted objects (figures and tables) are in text boxes with their captions.  Throughout the editing process some objects have been deleted or moved so now they're completely out of order.

How do I get them all to update at once?  When I select all (Ctrl+A) only the body gets selected.  It is currently ignoring all tables, figures, headers, footers where I have a lot of fields.  I don't mind having to go into the header/footers manually because that at least only has to be done once.  But with my captions, currently I have to select each caption in each text box seperately to update them. 

I appreciate all of your help.

Additionally, I have figured out that I can go to Print Preview and get them to all update so it's getting better...BUT I have two figures on a page (one on the top half and the other on the bottom half) and their figure numbers are out of order. 

Top of Page:  Figure 4-5

Bottom:  Figure 4-4

I've tried updating manually, I've even deleted both captions and re-input them...nothing.  What is going on?

Microsoft 365 and Office | Word | For home | Windows

Locked Question. This question was migrated from the Microsoft Support Community. You can vote on whether it's helpful, but you can't add comments or replies or follow the question.

0 comments No comments
Answer accepted by question author
Jay Freedman 208.3K Reputation points Volunteer Moderator
2010-03-13T04:51:07+00:00

Going to Print Preview and back is the best way of updating all fields at once.

Do you by chance have the pictures and their captions in text boxes? If so, the caption numbering will be in the order of the locations of the "anchors" of the text boxes, not in order of the positions of the boxes themselves. First go to Office button > Word Options > Display and check the box to show object anchors. Now go to the page with the problem, and click on the edge of the upper text box. Note which paragraph has the anchor symbol next to it. Now click the lower text box. If the anchor for this one is on a paragraph higher on the page than the first one, drag it to a paragraph below the first one. Then go to Print Preview to update the captions, and they should straighten out.


Jay Freedman MS Word MVP

Was this answer helpful?

60+ people found this answer helpful.
0 comments No comments

56 additional answers

Sort by: Oldest
  1. Anonymous
    2012-07-19T22:36:59+00:00

    In your Word Options-->Display--check "Update fields before printing."

    My F9 doesn't work so this saved me.

    Was this answer helpful?

    0 comments No comments
  2. Anonymous
    2012-12-12T09:56:52+00:00

    ... or you can use a macro like this one:

    Sub Update_all_fields()

        ActiveDocument.Fields.Update

    End Sub

    Was this answer helpful?

    0 comments No comments
  3. Anonymous
    2012-12-12T12:27:44+00:00

    But a macro like that won't update all fields.  One like this will though:

    Public Sub UpdateAllFields()

    Dim rngStory As Word.Range

    Dim lngJunk As Long

    Dim oShp As Shape

    lngJunk = ActiveDocument.Sections(1).Headers(1).Range.StoryType

    For Each rngStory In ActiveDocument.StoryRanges

      'Iterate through all linked stories

      Do

        On Error Resume Next

        rngStory.Fields.Update

        Select Case rngStory.StoryType

          Case 6, 7, 8, 9, 10, 11

            If rngStory.ShapeRange.Count > 0 Then

              For Each oShp In rngStory.ShapeRange

                If oShp.TextFrame.HasText Then

                   oShp.TextFrame.TextRange.Fields.Update

                End If

              Next

            End If

          Case Else

            'Do Nothing

        End Select

        On Error GoTo 0

        'Get next linked story (if any)

        Set rngStory = rngStory.NextStoryRange

      Loop Until rngStory Is Nothing

      For Each oToc In ActiveDocument.TablesOfContents

        oToc.Update

      Next oToc

    Next

    End Sub

    Was this answer helpful?

    0 comments No comments
  4. Anonymous
    2013-01-29T20:10:43+00:00

    To update all the fields you can select all and press F9. this will update all fields. but not fields within header and footer.

    This should be marked as the answer.  Object anchors?  Menus?  Even Macros??!!??  Jeez, Ctrl+A and then F9 is so much easier.  Sheesh.

    Was this answer helpful?

    1 person found this answer helpful.
    0 comments No comments