2013-10-25 3 views
1

Я получил объект диапазона для выбранной части документа Word.
Я хочу получить текст в этом диапазоне.
проблема, с которой я столкнулся, заключается в том, что я хочу читать маркированные/пронумерованные списки с номером/патронами.
, например, если содержание выбранной области,Как читать маркированные/пронумерованные списки, используя объект диапазона слов?

1.abc
2.bcd
3.efg

я хочу, чтобы получить строку чтения, чтобы быть 1.abc 2.bcd 3. EFG.

i б/у область.text. он дает только содержимое списка без патронов/чисел.
я использовал даже диапазон.ListFormat.ListString с диапазоном.text.
Здесь проблема заключается в том, что, если выбранная часть

1.Ab с
2.bcd
3.efg

то, что строка я получаю "1. с BCD EFG" .mostly потому что диапазон .ListFormat.ListString дает номер/номер для первого элемента списка.

но то, что я хочу Somthing как

  1. C 2. BCD 3. EFG

есть ли способ/собственность, чтобы сделать это?
предпочтительно с использованием самой текстовой модели объекта.

ответ

1

Вам нужно начать с чего-то подобного, но детали зависят от того, хотите ли вы использовать символы окончания параграфа и т. Д.

Dim p As Paragraph 
Dim s As String 
s = "" 
For Each p In Selection.Range.Paragraphs 
    s = s & p.Range.ListFormat.ListString & " " & p.Range.Text 
Next 
Debug.Print s 
End Sub 
+0

спасибо.Этот код дал хорошее представление. Он дает полный текст в абзаце, даже если часть этого абзаца (списка) выбрана. В любом случае эта идея дала хорошее направление для решения. – LearningC

Смежные вопросы