仅在脚注中替换脚注参考的上标



我正在尝试将脚注转换为特定的字体样式(芝加哥样式)。我已经单独更改了脚注的字体,但是我无法在页面的脚注中查询到脚注参考号。我试图将上标转换成一个正常的数字,不能得到的代码工作的某种原因。它不停地改变文档正文其余部分的上标,这不是我想要的,因为正文中的参考编号保持上标。任何帮助都会很感激。谢谢你!

With ActiveDocument.Styles("Normal").Font
.Name = "Palatino Linotype"
.Size = 11
End With

Dim afn As Footnote
For Each afn In ActiveDocument.Footnotes
With afn.Range
.Font.Size = 8.5
.Font.Name = "Palatino Linotype"
.Text = .Text
End With
Next afn

Dim f As Footnote
For Each f In ActiveDocument.Footnotes
With f.Range.Characters(1)
.Font.Superscript = False
End With
Next

'With Selection
'.Paragraphs(1).Range.Font.Reset
'.Paragraphs(1).Range.Characters(2) = ""
'.InsertAfter "." & vbTab
'.Collapse wdCollapseEnd
'End With


'For Each afn In ActiveDocument.Footnotes
'With ActiveDocument.Content.Find
'.ClearFormatting
'.Replacement.ClearFormatting
'.Font.Superscript = True
'.Format = True
'.Text = ""
'.Replacement.Text = "^&"
'.Replacement.Font.Superscript = False
'.MatchWildcards = True
'.Execute Replace:=wdReplaceAll
'End With
'Next afn


'Make Footnotes non-superscripted
'With ActiveDocument.Content.Find
'.ClearFormatting
'.Replacement.ClearFormatting
'.Font.Superscript = True
'.Format = True
'.Text = ""
'.Replacement.Text = "^&"
' .Replacement.Font.Superscript = False
'  .MatchWildcards = True
'   .Execute

一个Word文档是由许多故事范围构成的,其中一个是脚注故事。要使脚注编号仅在脚注中是非上标,您可以在脚注故事中执行查找和替换,如下所示。

Sub ApplyChicagoStyle()
With ActiveDocument.StoryRanges(wdFootnotesStory).Find
.Style = ActiveDocument.Styles(wdStyleFootnoteReference)
.Replacement.Style = ActiveDocument.Styles(wdStyleFootnoteText)
.Replacement.Font.Superscript = False
.Format = True
.Execute Replace:=wdReplaceAll
End With
End Sub

您需要在将所有脚注添加到文档后运行此命令。

你的帖子模棱两可:

•您是在修改脚注还是脚注引用?

•Chicago是否真的要求为脚注使用特定的字体,或者为脚注引用的字体与文档主体中的脚注引用的字体不同?我找不到任何文件表明这两个命题都是正确的。

如果你想改变的是脚注,改变脚注样式。不需要代码

或者,如果您想从脚注中的脚注引用中删除上标,而不是在文档主体中,您可以在那里使用查找/替换。作为宏,这将是:

Sub Demo()
Application.ScreenUpdating = False
With ActiveDocument.StoryRanges(wdFootnotesStory).Find
.ClearFormatting
.Replacement.ClearFormatting
.Text = "^2"
.Replacement.Text = "^&"
.Replacement.Font.Superscript = False
.Forward = True
.Format = True
.Wrap = wdFindContinue
.Execute Replace:=wdReplaceAll
End With
Application.ScreenUpdating = True
End Sub

最新更新