View Single Post
 
Old 02-02-2021, 03:45 PM
Guessed's Avatar
Guessed Guessed is offline Windows 10 Office 2016
Expert
 
Join Date: Mar 2010
Location: Canberra/Melbourne Australia
Posts: 4,176
Guessed has a brilliant futureGuessed has a brilliant futureGuessed has a brilliant futureGuessed has a brilliant futureGuessed has a brilliant futureGuessed has a brilliant futureGuessed has a brilliant futureGuessed has a brilliant futureGuessed has a brilliant futureGuessed has a brilliant futureGuessed has a brilliant future
Default

Cynd

Looking at the file you posted, the old footnotes appear to have been converted to regular content and there are autonumbers on those paragraphs. Looking at the lack of styles and the entry for #9 which has a couple of extra paragraphs inserted (eg between South America), I would guess that the file was converted from PDF and edited in Word.

This is a disaster and I would presume that the complete doc pre-acceptance of tracked revisions already has lost the footnote functionality. If that is the case, the only solution is to redo all the footnotes. I had a fiddle with a concept macro to do this and it might do most of the work for you. It does fall down when an ex-footnote has multiple paragraphs like the #9 I talked about above. If you remove those extra paragraphs before running the macro you will be happier with the result.

This macro should be run in a COPY of the document after selecting the block of ex-footnotes.
Code:
Sub ReDoFootnotes()
  Dim aPar As Paragraph, aRng As Range, i As Integer, iID As Integer
  Dim aRng2 As Range, aFN As Footnote, aRngMove As Range
  
  Set aRng = Selection.Range
  For i = aRng.Paragraphs.Count To 1 Step -1
    Set aPar = aRng.Paragraphs(i)
    iID = aPar.Range.ListFormat.ListValue
    Set aRng2 = ActiveDocument.Range(0, aRng.Start)
    With aRng2.Find
      .ClearFormatting
      .Font.Superscript = True
      .Text = iID
      .Forward = False
      If .Execute Then
        aRng2.Text = ""
        Set aFN = ActiveDocument.Footnotes.Add(Range:=aRng2)
        Set aRngMove = aPar.Range
        aRngMove.End = aRngMove.End - 1
        aFN.Range.FormattedText = aRngMove
        aPar.Range.Delete
      End If
    End With
  Next i
End Sub
__________________
Andrew Lockton
Chrysalis Design, Melbourne Australia
Reply With Quote