Я не смог найти решение проблемы - я считаю, что это ошибка в Word. Тем не менее, я нашел работоспособное решение, используя макрос для обновления полей, а не вручную. Этот макрос будет показывать коды полей, снимать выделение с кодов, начинающихся с «^ d seq AppL», обновлять все поля в документе, затем перебирать правильные поля и скрывать коды полей. Я не могу утверждать, что это надежно или эффективно - но, возможно, это поможет кому-то в дальнейшем:
Sub UpdateRefs() 'Setup / checks If Documents.Count = 0 Then Exit Sub Application.ScreenUpdating = False 'Show field codes ActiveDocument.ActiveWindow.View.ShowFieldCodes = True 'Unbold Appendix labels so they don't propagate. Selection.Find.ClearFormatting Selection.Find.Replacement.ClearFormatting With Selection.Find .Text = "^d seq AppL" .Replacement.Text = "" .Replacement.Font.Bold = False .Forward = True .Wrap = wdFindContinue .MatchWholeWord = True End With Selection.Find.Execute Replace:=wdReplaceAll 'Update all fields in document. Dim oStory As Object Dim oToc As Object For Each oStory In ActiveDocument.StoryRanges oStory.Fields.Update Next oStory For Each oToc In ActiveDocument.TablesOfContents oToc.Update Next oToc 'Rebold for looks. Selection.Find.ClearFormatting Selection.Find.Replacement.ClearFormatting With Selection.Find .Text = "^d seq AppL" .Replacement.Text = "" .Replacement.Font.Bold = True .Forward = True .Wrap = wdFindContinue .MatchWholeWord = True End With Selection.Find.Execute Replace:=wdReplaceAll 'Hide field codes. ActiveDocument.ActiveWindow.View.ShowFieldCodes = False Application.ScreenUpdating = True End Sub