如何读取ms字(单词对象模型)中的多级列表号?

时间:2013-10-28 12:05:41

标签: python windows com ms-word

我想阅读单词中的多级列表格式 例如,如果列表是

    1.abc
    2.def
      a.ghi
      b.jkl

用ghi的范围对象,
我想得到列表编号字符串,

  2.a. ghi 

我知道 Listformat.ListLevelNumber 给出了列表级别。
但是没有得到任何财产来获得这种形式的列表编号 有没有财产?
或者,任何解决这个问题的工作? 或者,任何可以帮助我的概念? 我已经浏览了msdn中的一些主题,我觉得这可能有所帮助 我有范围对象。

1 个答案:

答案 0 :(得分:0)

我通过将范围划分为段落然后使用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包含我想要添加的列表前缀,以获取表示完整嵌套表单的字符串。我得到的这个解决方案是基于所有列表项都是不同段落的事实。