【问题标题】:how to read multi level list numbers in ms word(word object model)?如何读取 ms word(word 对象模型)中的多级列表编号?
【发布时间】:2013-11-07 04:46:33
【问题描述】:
我想在word中读取多级列表格式。
例如,如果列表是
1.abc
2.def
a.ghi
b.jkl
使用 ghi 的范围对象,
我想获取列表编号字符串,
2.a.吉
我知道 Listformat.ListLevelNumber 给出了列表级别。
但没有获得任何属性来获取此表单中的列表编号。
有房产吗?
或者,有什么办法可以解决这个问题吗?
或者,任何可以帮助我的概念?
我在 msdn 中浏览了一些我觉得可能会有所帮助的主题。
我有范围对象。
【问题讨论】:
标签:
python
windows
com
ms-word
【解决方案1】:
我通过将范围划分为段落然后使用 listLevelnumber 向后迭代直到我到达具有少 1 个 listlevelNumber 的段落,表示更高级别列表中的最后一个列表。我访问了 ListString.repeated直到我到达顶级列表。
python中的代码是,
text=Range.ListFormat.ListString+str(Range.text)
level=Range.ListFormat.ListLevelNumber
lstr=""
if level > 1:
p=Range.Paragraphs.First
while level >1 :
while p.Range.ListFormat.ListLevelNumber == level :
p=p.Previous(1)
lstr=p.Range.ListFormat.ListString+lstr
level=level-1
if lstr:
text=lstr+text
lstr 包含我要添加的列表前缀,以获取表示完整嵌套表单的字符串。我得到的这个解决方案是基于所有列表项都是不同的段落这一事实。