创建节有两种方法,一种是使用Sections对象的Add方法创建,另一种是使用Range对象的InsertBreak方法创建。[大谦Excel,dqexcel点com]
使用Sections对象的Add方法创建
Sections对象的Add方法在指定字符序列前面添加一个分节符,其语法格式为:
code.python
doc.Sections.Add(Range, Type)
其中,doc为当前使用的文档;Range参数为指定的字符序列,分节符在该字符序列前面插入,如果省略该参数,分节符在文档最后插入;Type为分节符的类型,取值为WdSectionStart常量之一,如表5-1中所示。
表5-1 WdSectionStart常量表示的分节符
| 分节符的类型 | 值 | 常 数 |
|---|---|---|
| 连续分节符 | 0 | wdSectionContinuous |
| 偶数页分节符 | 3 | wdSectionEvenPage |
| 新栏分节符 | 1 | wdSectionNewColumn |
| 新页分节符 | 2 | wdSectionNewPage |
| 奇数页分节符 | 4 | wdSectionOddPage |
下面打开文档test3.docx,获取第2个段落的字符序列,在该段落前添加一个下一页分节符。
code.python
>>> import win32com.client as win32 #导入win32com模块
>>> from win32com.client import constants #导入constants类
>>> app=win32.gencache.EnsureDispatch('word.application') #创建应用
>>> app.Visible=True #应用可见
>>> doc=app.Documents.Open('D:\\test3.docx') #打开文档
>>> rng=doc.Paragraphs(2).Range #获取第2个段落的字符序列
>>> doc.Sections.Count #文档总节数,默认时全部为1节
1
>>> doc.Sections.Add(rng, constants.wdSectionNewPage) #第2段前添加分节符
>>> doc.Sections.Count #总节数
2
运行后,第2个段落显示在文档第2页顶部。
使用Range对象的InsertBreak方法创建
用Range对象表示文档中指定节的范围,使用它的InsertBreak方法插入分节符。该方法的语法格式为:
code.python
rng.InsertBreak(Type)
其中,Type表示要插入的分节符的类型,取值为wdBreakType常量之一,如表5-2中所示。
表5-2 wdBreakType常量表示的分节符
| 分节符的类型 | 值 | 常 数 |
|---|---|---|
| 连续分节符 | 3 | wdSectionBreakContinuous |
| 偶数页分节符 | 4 | wdSectionBreakEvenPage |
| 下一页分节符 | 2 | wdSectionBreakNextPage |
| 奇数页分节符 | 5 | wdSectionBreakOddPage |
下面将文档中第2个段落定义为一个字符序列,在字符序列前面插入下一页分节符。
code.python
>>> doc=app.Documents.Open('D:\\test3.docx') #打开文档
>>> rng=doc.Paragraphs(2).Range #获取第2个段落的字符序列
>>> rng.InsertBreak(constants.wdSectionBreakNextPage) #插入分节符
运行后,第2个段落显示在文档第2页顶部。