Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 631
  • Last Modified:

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

0
AndreasHermle
Asked:
AndreasHermle
  • 3
  • 2
1 Solution
 
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
 
AndreasHermleAuthor 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
 
AndreasHermleAuthor 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
 
DonQuiyoteCommented:
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
 
AndreasHermleAuthor Commented:
Dear DQ: very good job. Thank you for your terrific help. Regards, Andreas
0

Featured Post

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

  • 3
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now