在今天的文章中,我们将向您介绍 4 种有效的方法来从字数统计中排除 Word 文档中的数字。
通常,Word 会统计所有类型的文本,无论是单词还是数字。 但是,有时我们可能会排除某些元素(例如数字)来进行字数统计。 因此,我们很高兴向您展示 4 种方法来满足这一要求。
首先,您必须备份目标文档,并在备份文档上执行以下所有方法。
方法一:删除所有号码
- 首先,打开复制文件并单击“主页”选项卡下“查找”的下拉按钮。
- 其次,选择“高级查找”打开“查找和替换”对话框。
- 接下来在“查找内容”文本框中输入“^#”。 如果您不记得这个字符串,请将光标放在“查找内容”文本框并单击“更多”,然后单击“特殊”按钮。
- 然后选择“任何数字”。
- 现在单击“查找位置”并选择“主文档”。
- 你会发现所有的号码都在选择中。
- 按“删除”。
- 数字消失后,您会注意到 Word 现在将一些标点符号视为单词。 因此,您还需要删除所有标点符号。 再次打开“查找和替换”框。 这次输入“[,.;:'”””/\!\*\?\\]”(不带引号)在“查找内容”文本框中。
- 并记得选中“使用通配符”框。
- 重复步骤 5 以查找所有标点符号。
- 删除它们。
- 最后,单击“Review”,然后单击“Word Count”以查看文本总数。
方法 2:将所有数字格式化为隐藏文本
Word 在字数统计中不包括隐藏文本,因此您可以选择以隐藏格式设置数字。
- 首先,重复方法中的前 6 个步骤。
- 不要删除选定的数字,而是按“Ctrl+D”打开“字体”框。
- 选中“隐藏”框,然后单击“确定”。
- 接下来重复步骤 8 到 9 以查找所有标点符号。
- 同样,按照步骤 2 和 3 将标点符号格式化为隐藏文本。
- 最后,检查总字数。
方法二:运行Word宏
以下宏将自动执行上述步骤并返回一个消息框,其中包含不包括数字的单词总数。
- 首先,在 Word 中按“Alt+F11”打开 VBA 编辑器。
- 接下来单击左栏中的“正常”。
- 然后单击“插入”选项卡并选择“模块”。
- 双击模块将其打开并粘贴以下代码:
Sub ExcludeNumbersFromWordCount()
Dim objDoc As Document
Dim nWord As Integer
Set objDoc = ActiveDocument
With Selection
.HomeKey Unit:=wdStory
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = "^#"
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
.Execute
End With
Selection.Find.Execute Replace:=wdReplaceAll
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = "[,.;:’" & ChrW(8221) & ChrW(8221) & """/\!\*\?\\]"
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchAllWordForms = False
.MatchSoundsLike = False
.MatchWildcards = True
.Execute
End With
Selection.Find.Execute Replace:=wdReplaceAll
End With
nWord = objDoc.Range.ComputeStatistics(wdStatisticWords)
MsgBox ("There are " & nWord & " words in this document.")
End Sub
- 单击“运行”。
您将收到一个消息框,告诉您文档中有多少个单词,例如:
方法 4:从字数统计中排除表格中的数字
这里特别需要从字数统计中排除表格中的数字。 解决方案是运行一个宏。
- 按照上面方法 3 中的说明安装并运行宏。
- 然后用这个替换那个宏:
Sub ExcludeNumbersInTablesFromWordCount()
Dim objDoc As Document, objNewDoc As Document
Dim nWord As Integer, nWordInNewDoc As Integer, nWordInNewDocWithoutNum As Integer, nNumber As Integer
Dim objTable As Table
Dim objRange As Range
Dim objParagraph As Paragraph
Set objDoc = ActiveDocument
Set objNewDoc = Documents.Add
nWord = objDoc.Range.ComputeStatistics(wdStatisticWords)
For Each objTable In objDoc.Tables
objTable.Range.Select
Selection.Copy
Set objRange = objNewDoc.Range
objRange.Collapse Direction:=wdCollapseEnd
objRange.PasteSpecial DataType:=wdPasteRTF
objRange.Collapse Direction:=wdCollapseEnd
objRange.Text = vbCr
Next objTable
objNewDoc.Activate
For Each objParagraph In ActiveDocument.Paragraphs
If objParagraph.Range.Style = "Caption" Then
objParagraph.Range.Delete
End If
Next objParagraph
nWordInNewDoc = objNewDoc.Range.ComputeStatistics(wdStatisticWords)
With Selection
.HomeKey Unit:=wdStory
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = "^#"
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
.Execute
End With
Selection.Find.Execute Replace:=wdReplaceAll
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = "[,.;:’" & ChrW(8221) & ChrW(8221) & """/\!\*\?\\]"
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchAllWordForms = False
.MatchSoundsLike = False
.MatchWildcards = True
.Execute
End With
Selection.Find.Execute Replace:=wdReplaceAll
End With
nWordInNewDocWithoutNum = objNewDoc.Range.ComputeStatistics(wdStatisticWords)
nNumber = nWordInNewDoc - nWordInNewDocWithoutNum
objDoc.Activate
MsgBox ("There are " & nWord - nNumber & " words in this document, excluding numbers in tables.")
End Sub
将出现一个消息框,如下所示:
提前想好
鉴于 Word 并非万无一失,您必须在为时已晚之前采取预防措施。最有效的方法是备份您的文档,并且尽可能多地备份。备份一个文档可能只需几分钟,但恢复一个文档却可能需要数小时甚至数天。 损坏的 docx. 因此,请提前考虑以节省您的时间和金钱。
作者简介:
Vera Chen 是一位数据恢复专家 DataNumen, Inc.,它是数据恢复技术领域的世界领先者,包括 Excel修复 和 pdf 修复软件产品。 欲了解更多信息,请访问 datanumen.com









