页眉和页脚的字数统计(Microsoft Word)
凯特(Kate)只需要为文档中的页眉和页脚生成一个字数统计表,而她却不知该如何做。
没有自动方法可以执行此操作,但是您可以开发一个可以计算出计数的宏。通过VBA,您可以轻松地逐步浏览文档各部分中的标题,然后可以确定每个标题中有多少个单词。一种方法是使用如下所示的宏:
Sub CntHeaderWords() Dim s As Section Dim h As HeaderFooter Dim sRaw As String Dim Cnt As Long Dim J As Integer Cnt = 0 For Each s In ActiveDocument.Sections For Each h In s.Headers For J = 1 To h.Range.Words.Count sRaw = h.Range.Words(J) sRaw = Trim(sRaw) If sRaw = vbCrLf Then sRaw = "" If sRaw = vbCr Then sRaw = "" If sRaw = vbLf Then sRaw = "" If Len(sRaw) > 0 Then Cnt = Cnt + 1 Next J Next h Next s MsgBox Cnt & " words in headers" End Sub
当您运行此宏时,它将逐步遍历文档中的每个部分,然后遍历该部分中的每个标题。确定每个标题的字数,并将其添加到Cnt变量中。宏完成后,它将显示文档标题的字数统计。
关于此宏,有几点有趣的事情要注意。
首先,由于您可以为每个标题确定Words集合的Count属性,因此您可能会认为只需将所有这些计数加在一起即可确定总体字数。问题是,即使没有节的标题,Word也会为“隐含”标题返回1的字数。这就是宏实际上检查标题中的每个单词的原因,并且如果它只是一个回车符或换行符,那么它就不包含在计数中。
还要注意的另一项是,如果标题中有标点符号,则每个标点符号都将算作一个单词。例如,如果您具有标题“保留所有权利”,Word会将其视为三个单词。如果标题为“保留所有权利”。 (带有尾随的句号),则Word认为这是四个单词。结果是,如果您认为标头中可能包含标点符号,则可能需要调整宏代码以不计算标点符号。
该宏仅返回文档标题中的字数。相反,如果您想要页眉和页脚的字数统计,则可以通过以下方式调整宏:
Sub CntHFWords() Dim s As Section Dim h As HeaderFooter Dim f As HeaderFooter Dim sRaw As String Dim HdCnt As Long Dim FtCnt As Long Dim J As Integer HdCnt = 0 FtCnt = 0 For Each s In ActiveDocument.Sections For Each h In s.Headers For J = 1 To h.Range.Words.Count sRaw = h.Range.Words(J) sRaw = Trim(sRaw) If sRaw = vbCrLf Then sRaw = "" If sRaw = vbCr Then sRaw = "" If sRaw = vbLf Then sRaw = "" If Len(sRaw) > 0 Then HdCnt = HdCnt + 1 Next J Next h For Each f In s.Footers For J = 1 To f.Range.Words.Count sRaw = f.Range.Words(J) sRaw = Trim(sRaw) If sRaw = vbCrLf Then sRaw = "" If sRaw = vbCr Then sRaw = "" If sRaw = vbLf Then sRaw = "" If Len(sRaw) > 0 Then FtCnt = FtCnt + 1 Next J Next f Next s sRaw = "Header words: " & HdCnt & vbCrLf sRaw = sRaw & "Footer words: " & FtCnt & vbCrLf sRaw = sRaw & "Total words: " & HdCnt + FtCnt MsgBox sRaw End Sub
此版本的宏将与每个页眉相同的计数技术应用于每个页脚,并在宏末尾显示单个计数和总计数。
注意:
如果您想知道如何使用此页面(或_WordTips_网站上的任何其他页面)上描述的宏,我准备了一个包含有用信息的特殊页面。
_WordTips_是您进行经济有效的Microsoft Word培训的来源。
(Microsoft Word是世界上最流行的文字处理软件。)本技巧(10285)适用于Microsoft Word 2007、2010和2013。