在MS Word中统计所选行数

3

我想要在MS Word文档中计算所选文本的行数。我写了以下代码:

Sub Count_Lines()
ActiveDocument.ComputeStatistics (wdStatisticLines)
MsgBox ("The document contains " & NumLines & " Lines")
End sub

但它实际上是计算整个文档的行数。有人能帮忙找到只计算所选行数的代码吗?
2个回答

3
只需使用Selection.Range对象,而不是ActiveDocument
Sub Count_Lines()
    MsgBox ("The selection contains " & Selection.Range.ComputeStatistics(wdStatisticLines) & " Lines")
End Sub

1
你的代码意图在消息框中显示NumLines的值。然而,该变量没有被赋值。实际上,该变量本身也没有声明。下面的代码填补了这两个缺点,然后就可以正常工作了。但是,它将计算文档中的所有行。如果你只想要选定的行,请使用下面提供的解决方案。
Option Explicit

Sub Count_Lines()

    Dim NumLines As Long

    NumLines = ActiveDocument.ComputeStatistics(wdStatisticLines)
    MsgBox ("The document contains " & NumLines & " Lines")
End Sub

注意。他们说,Option Explicit“强制”你声明变量,这迫使反应抵抗。将其力量与交通警察坚持让你开车在道路的右侧进行比较。使用 Option Explicit 不会延长您的生命,但它会大大减少您因为过于自负而花费在追踪愚蠢错误上的时间。 Option Explicit 是提供给我一个立即指向您在此寻求帮助的问题源头的工具。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接