Copy footnote text in new document

Dear Experts:
Below macro copies all footnotes and pastes them into a new document. The macro runs just fine. There is a small drawback to the pasted text since the original footnote reference numbers are lost and all the pasted footnotes have got the number 1. I do not care about that.

Now I got a document where each time a new section is started, the footnotes will start with number one (1) again.
The macro should be rewritten so that whenever the footnote number restarts, the target document in which the footnotes are copied should list the new section number before the copied footnotes. Example:

Section 1:
(1) sample text 1
(1) sample text 2
(1) sample text 3
Section 2:
(1) sample footnote text 4
(1) sample footnote text 5
(1) sample footnote text 6
(1) sample footnote text 7
Section 3:
(1) sample footnote text 8
etc.  

I wonder whether this is possible? Help is much appreciated. Thank you very much in advance. Regards, Andreas

Sub CopyFNTextInNewDoc()
 
If MsgBox("This macro copies all footnotes and paste them into a new document" & vbCrLf & _
"Would you like to continue?", vbYesNo, "Copying all footnotes into a new document") = vbNo Then
Exit Sub
 
ElseIf ActiveDocument.Footnotes.count = 0 Then
MsgBox "There are no footnotes in the current document", vbInformation
End If
 
  Dim oDoc As Document, nDoc As Document
  Set oDoc = ActiveDocument
  Set nDoc = Documents.Add(Template:=oDoc.AttachedTemplate.FullName)
  nDoc.Content.FormattedText = oDoc.StoryRanges(wdFootnotesStory).FormattedText
End Sub

Open in new window

Andreas HermleTeam leaderAsked:
Who is Participating?
 
DonQuiyoteConnect With a Mentor Commented:
That's no problem, but we'll just have to search repeatedly for each section:
Sub CopyFNTextInNewDoc()
If MsgBox("This macro copies all footnotes and paste them into a new document" & vbCrLf & _
"Would you like to continue?", vbYesNo, "Copying all footnotes into a new document") = vbNo Then
Exit Sub
 
ElseIf ActiveDocument.Footnotes.count = 0 Then
MsgBox "There are no footnotes in the current document", vbInformation
End If
 
    Dim oDoc As Document, nDoc As Document
    Set oDoc = ActiveDocument
    Set nDoc = Documents.add(template:=oDoc.AttachedTemplate.FullName)
    
    Dim f, s, ff As Footnote, ss As Section, i As Integer
    With nDoc.Content
    For Each s In oDoc.Sections
        Set ss = s ' not necessary but enables autocomplete
        .InsertAfter "Section " & ss.Index & ":" + vbCr
        For Each f In oDoc.Footnotes
            Set ff = f
            If ff.Reference.InRange(ss.Range) Then
                .InsertAfter ff.Index & ". " + ff.Range.FormattedText + vbCr
            End If
        Next
    Next
    End With
    
End Sub

Open in new window

0
 
DonQuiyoteCommented:
Try this instead. If the footer numbers play up, why not insert new sections as well?
  Dim i As Integer
  For i = 1 To oDoc.Sections.count
  nDoc.Content.InsertAfter oDoc.Sections(1).Footers(wdHeaderFooterPrimary).Range.FormattedText
  Next i

Open in new window

0
 
Andreas HermleTeam leaderAuthor Commented:
Dear DonQuiyote:
thanks for the swift help. This is just to tell you that it is gonna be tomorrow till I will have tested it.
Regards, Andreas
0
 
Andreas HermleTeam leaderAuthor Commented:
Hi DonQuiyote:

I am afraid to tell you that there must be a misunderstanding on your side. I am talking about footnotes that need to be copied and pasted into a new document (along with their respective section no.) and not 'footers' as you meant.

Regards, Andreas
0
 
Andreas HermleTeam leaderAuthor Commented:
Dear DQ: very good job. Thank you for your terrific help. Regards, Andreas
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.