Written by Allen Wyatt (last updated June 6, 2020)
This tip applies to Word 2007, 2010, 2013, 2016, 2019, and Word in Microsoft 365
Daniel has an academic paper that uses many footnotes. Right now, he has footnotes at the end of each sentence. He would like to combine all of the footnotes within a paragraph into a single footnote at the end of the paragraph. He wonders if there is a way to do this automatically.
There is no way to do this automatically, but you can do it with a macro. All the macro needs to do is to step through each paragraph in the document and see if it has any footnotes. Then, assuming it does, it concatenates those, deletes the footnotes, and adds a new footnote with the concatenated text at the end of the paragraph. Here's a macro that does just that:
Sub MoveFootnotes() Dim p As Paragraph Dim iFN As Integer Dim J As Integer Dim oCurPar As Object Dim sTemp As String For Each p In ActiveDocument.Paragraphs sTemp = "" iFN = p.Range.Footnotes.Count For J = iFN To 1 Step -1 sTemp = p.Range.Footnotes(J).Range.Text & " " & sTemp p.Range.Footnotes(J).Delete Next J sTemp = Trim(sTemp) If sTemp > "" Then Set oCurPar = p.Range oCurPar.Collapse Direction:=wdCollapseEnd oCurPar.MoveEnd Unit:=wdCharacter, Count:=-1 ActiveDocument.Footnotes.Add Range:=oCurPar, Text:=sTemp End If Next p End Sub
Note that the macro concatenates the footnote text for each paragraph into the sTemp string. This is then used when adding the footnote to the end of the paragraph. This does present a drawback to the macro—it copies only text, not any formatting for the text.
For instance, if you have a bunch of footnotes that include citations to books, chances are good that those book titles are formatted in italic. After running the macro, the italic will be gone, though all the text is there. (There is no way that I'm aware of to transfer the formatting, intact, into the new footnote.)
Note:
WordTips is your source for cost-effective Microsoft Word training. (Microsoft Word is the most popular word processing software in the world.) This tip (13767) applies to Microsoft Word 2007, 2010, 2013, 2016, 2019, and Word in Microsoft 365.
The First and Last Word on Word! Bestselling For Dummies author Dan Gookin puts his usual fun and friendly candor back to work to show you how to navigate Word 2013. Spend more time working and less time trying to figure it all out! Check out Word 2013 For Dummies today!
Want to print your document without all those footnotes included? It's not quite as easy as you might think, as this tip ...
Discover MoreIf you have a document that contains a lot of active hyperlinks, you can use a macro to convert those hyperlinks to ...
Discover MoreWhen inserting footnotes and endnotes in a document, most of us don't give much thought to the format used in the ...
Discover MoreFREE SERVICE: Get tips like this every week in WordTips, a free productivity newsletter. Enter your address and click "Subscribe."
2020-06-08 13:24:29
Andrew
Here's the way I would do it, using the Clipboard to retain the formatting of each footnote's text, and permitting a specified separator text to be inserted between the original footnotes' text and a prefix to each footnote.
Sub CombineParagraphFootnotes()
Const Prefix As String = "Fn: " ' Set to "" to not have a prefix,
Const Separator As String = " " ' Set to "" to not have a separator.
Dim P As Paragraph
Dim CurNo As Integer
Dim AggregatedFootnote As Footnote
For Each P In ActiveDocument.Paragraphs
If P.Range.Footnotes.Count > 0 Then
' Add a new footnote to the end of the paragraph.
Set AggregatedFootnote = ActiveDocument.Footnotes.Add(Range:=P.Range) ' Here, "Range" parameter is the *paragraph's text*
' Loop backwards through the paragraphs footnotes, except the newly created last one
For CurNo = P.Range.Footnotes.Count - 1 To 1 Step -1
' Move the Footnote's formatted text to the beginning of the new footnote via Clipboard
AggregatedFootnote.Range.Select
Selection.Collapse Direction:=wdCollapseStart
P.Range.Footnotes(CurNo).Range.Cut
Selection.Paste
' Add Separator and Prefix.
AggregatedFootnote.Range.Select
Selection.Collapse Direction:=wdCollapseStart
If CurNo <> 1 Then Selection.InsertAfter Separator ' No Separator for first footnote (= last iteration).
Selection.InsertAfter Prefix
P.Range.Footnotes(CurNo).Delete
Next CurNo
End If
Next P
End Sub
Got a version of Word that uses the ribbon interface (Word 2007 or later)? This site is for you! If you use an earlier version of Word, visit our WordTips site focusing on the menu interface.
Visit the WordTips channel on YouTube
FREE SERVICE: Get tips like this every week in WordTips, a free productivity newsletter. Enter your address and click "Subscribe."
Copyright © 2025 Sharon Parq Associates, Inc.
Comments