Сократить Myrange от абзаца до двух строк - PullRequest
0 голосов
/ 04 декабря 2018

После установки Myrange первого абзаца.Мне нужно оценить количество строк текущего абзаца, если строки меньше 3, то следующий код превратит шрифт в жирный .

Set Myrange= Selection.Range.PARAGRAPHS(1).Range

If Myrange.ComputeStatistics(wdStatisticLines) < 3 Then
Myrange.Font.Bold = True

Else

Set Twolines = myrange.Duplicate
'''Here I want to reduce Myrange to only 2 lines
End If

, поэтому мой вопрос, как я могу изменить Myrange из абзаца в 2 строки?

Я делал это Selection method и не знаю, как это сделать, используя Ranges.например,

Selection.ExtendMode = True
Selection.EndKey Unit:=wdLine
Selection.MoveDown Unit:=wdLine, Count:=2

1 Ответ

0 голосов
/ 04 декабря 2018

Подход, который вы используете, используя объект Selection, действительно единственный.

«Линии» и «страницы» в документе Word не имеют соответствующих объектов в объектной модели Word.Например, в отличие от Words или Paragraphs, строки и страницы являются «динамическими»: то, где происходит разрыв строки или страницы, полностью зависит от того, как механизм компоновки Word обрабатывает документ в определенном сеансе в сочетании с текущим драйвером печати.,Вполне возможно, что разрыв строки или страницы на одном компьютере отличается от другого.И они, безусловно, изменятся «плавно», когда документ будет редактироваться.

По этой причине на самом деле невозможно рассматривать строку или страницу как «объект» в прогностическом смысле этого термина.Вот почему с ними можно справиться только с помощью Selection.

...