Convert Footnotes to Hard Text ???

G

Guest

I've got a long document with a bazillion footnotes. I'd like to
convert them to hard-coded text. How do I do that?

<*((((><{
(e-mail address removed)
 
K

Klaus Linke

I've got a long document with a bazillion footnotes. I'd like to
convert them to hard-coded text. How do I do that?

<*((((><{
(e-mail address removed)


Hi <*((((><{

Below's the macro I have been using...
Maybe you can improve on it a bit, or adapt it to your needs.

Greetings,
Klaus



Sub footnotestrip()
Dim afootnote As Footnote
Dim NumberOfFootnotes As Integer
Dim i As Integer
Dim aFootnoteReference As String
Dim aFootnoteRefTag As String
NumberOfFootnotes = ActiveDocument.Footnotes.Count
For i = NumberOfFootnotes To 1 Step -1
Set afootnote = ActiveDocument.Footnotes(i)
afootnote.Range.Select
Selection.MoveStartWhile Cset:=" " & Chr(9)
Selection.Cut
aFootnoteReference = afootnote.Reference.Text
Select Case aFootnoteReference
Case Chr(2)
aFootnoteRefTag = "<FNZ>"
Case "*"
aFootnoteRefTag = "<FNS>"
Case Else
aFootnoteRefTag = "<FNRef>" _
& aFootnoteReference & "</FNRef>"
End Select
afootnote.Reference.Select
If afootnote.Reference.Text = Chr(40) Then
With Dialogs(wdDialogInsertSymbol)
aFootnoteRefTag = _
"<FNSym," & .Font & "," _
& .CharNum & ">"
End With
End If
afootnote.Delete
Selection.InsertBefore "<FN>" _
& aFootnoteRefTag
Selection.Collapse (wdCollapseEnd)
Selection.Paste
Selection.InsertAfter "</FN>"
Next i
End Sub
 
G

Guest

Thanks, Klaus -- I'll give it a try.

<*((((><{
(e-mail address removed)



In the last exciting episode on Fri, 14 Jan 2005 17:21:51 +0100,

|> I've got a long document with a bazillion footnotes. I'd like to
|> convert them to hard-coded text. How do I do that?
|>
|> <*((((><{
|> (e-mail address removed)
|
|
|Hi <*((((><{
|
|Below's the macro I have been using...
|Maybe you can improve on it a bit, or adapt it to your needs.
|
|Greetings,
|Klaus
|
|
|
|Sub footnotestrip()
| Dim afootnote As Footnote
| Dim NumberOfFootnotes As Integer
| Dim i As Integer
| Dim aFootnoteReference As String
| Dim aFootnoteRefTag As String
| NumberOfFootnotes = ActiveDocument.Footnotes.Count
| For i = NumberOfFootnotes To 1 Step -1
| Set afootnote = ActiveDocument.Footnotes(i)
| afootnote.Range.Select
| Selection.MoveStartWhile Cset:=" " & Chr(9)
| Selection.Cut
| aFootnoteReference = afootnote.Reference.Text
| Select Case aFootnoteReference
| Case Chr(2)
| aFootnoteRefTag = "<FNZ>"
| Case "*"
| aFootnoteRefTag = "<FNS>"
| Case Else
| aFootnoteRefTag = "<FNRef>" _
| & aFootnoteReference & "</FNRef>"
| End Select
| afootnote.Reference.Select
| If afootnote.Reference.Text = Chr(40) Then
| With Dialogs(wdDialogInsertSymbol)
| aFootnoteRefTag = _
| "<FNSym," & .Font & "," _
| & .CharNum & ">"
| End With
| End If
| afootnote.Delete
| Selection.InsertBefore "<FN>" _
| & aFootnoteRefTag
| Selection.Collapse (wdCollapseEnd)
| Selection.Paste
| Selection.InsertAfter "</FN>"
| Next i
|End Sub
|
 
D

Doug Robbins

The following would also work for footnotes, but it places them at the end
of the document, not at the foot of each page.



' Macro created 29/09/99 by Doug Robbins to replace endnotes with textnotes
at end of document

' to replace the endnote reference in the body of the document with a
superscript number.

'

Dim aendnote As Endnote

For Each aendnote In ActiveDocument.Endnotes

ActiveDocument.Range.InsertAfter vbCr & aendnote.Index & vbTab &
aendnote.Range

aendnote.Reference.InsertBefore "a" & aendnote.Index & "a"

Next aendnote

For Each aendnote In ActiveDocument.Endnotes

aendnote.Reference.Delete

Next aendnote

Selection.Find.ClearFormatting

Selection.Find.Replacement.ClearFormatting

With Selection.Find.Replacement.Font

.Superscript = True

End With

With Selection.Find

.Text = "(a)([0-9]{1,})(a)"

.Replacement.Text = "\2"

.Forward = True

.Wrap = wdFindContinue

.Format = True

.MatchWildcards = True

End With

Selection.Find.Execute Replace:=wdReplaceAll

--
Please respond to the Newsgroup for the benefit of others who may be
interested. Questions sent directly to me will only be answered on a paid
consulting basis.

Hope this helps,
Doug Robbins - Word MVP
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top