唯一的办法就是
.Select
文本,他们操纵选择。
Selection
在唯一可以使用的对象中
wdLine
作为一个边界。word对象模型中的其他任何东西都不能与自动换行一起工作。
Sub GetFirstLineOfRange(RangeToCheck As Range, FirstLineRange As Range)
'Otherwise, Word doesn't always insert automatic line breaks
'and all the text will programmatically look like it's on a single line
If Not Application.Visible Or Not Application.ScreenUpdating Then
Application.ScreenRefresh
End If
Dim SelectionRange As Range
Set SelectionRange = Selection.Range
Set FirstLineRange = RangeToCheck
FirstLineRange.Select
Selection.Collapse Direction:=wdCollapseStart
Selection.EndOf Unit:=wdLine, Extend:=wdExtend
Set FirstLineRange = Selection.Range
If FirstLineRange.End > RangeToCheck.End Then
FirstLineRange.End = RangeToCheck.End
End If
SelectionRange.Select
End Sub
Function IsRangeOnOneLine(RangeToCheck As Range) As Boolean
Dim FirstLineRange As Range
GetFirstLineOfRange RangeToCheck, FirstLineRange
IsRangeOnOneLine = FirstLineRange.End >= RangeToCheck.End
End Function
子程序
GetFirstLineOfRange
拿一个
RangeToCheck
和集合
FirstLineRange
到给定范围内的第一个文本行。
功能
IsRangeOnOneLine
拿一个
范围检查
和回报
True
如果范围适合一行文本,并且
False
否则。该函数通过获取给定范围内的第一个文本行并检查它是否包含该范围来工作。
操纵
选择
在里面
获取第一行范围
是必需的,因为子程序希望将范围的末端移动到行的末端,并且移动单元
WDLINE公司
只有在
选择
是的。子程序保存并恢复当前
选择
;如果不需要,则临时变量
SelectionRange
并且可以删除关联的语句。
注: