如何向 word 里面插入一个分页符?

2020-10-10 21:12:21 +08:00
 golp2000

手上有上百个 docx 文件需要合并到一个文件,现在用 python 的 win32com 调用 word 已经可以把文件内容合并到一个文件里了,但这个文件的内容太紧密了,文件 1 的结尾马上就跟着文件 2 的开始,不太美观。

现在的想法是插入每个文件时,在后面添加一个分页符,让后面的文件总是从新的一页开始,而不是紧紧挨着上一个文件的结尾。

可以实现吗?

我搜了一下,有用 python-docx 库添加分页符的方法,那么用 win32com 可以添加分页符吗?

2532 次点击
所在节点    Python
12 条回复
kokutou
2020-10-10 21:15:05 +08:00
搞一个 word 文件,就包含 1 个分页符...
合并进去不就行了...
realpg
2020-10-10 21:17:45 +08:00
编程方式调用,有一切图形界面有的功能
最简单的办法就是你直接开启录制宏,然后插入一个分隔符,然后看一眼生成的代码
xd314697475
2020-10-10 21:21:12 +08:00
分成 2 步
先给文件轮流插入分页符
再合并
golp2000
2020-10-10 21:27:32 +08:00
@realpg 试了一下,word 宏里面插入分页符的语句是 Selection.InsertBreak Type:=wdPageBreak,应该怎么让 python 执行这个 vba 语句呢?
realpg
2020-10-10 22:00:23 +08:00
@golp2000 #4
你不是要 win32com 么……
你既然都说了 win32com,有 vba 了还不会用,建议还是 python-docx 吧
danbai
2020-10-10 22:19:23 +08:00
顺道问下 go unioffice 怎么让图片显示在文字下面
golp2000
2020-10-10 22:30:43 +08:00
@danbai 对 go 不太熟悉呢。。。
golp2000
2020-10-10 22:38:05 +08:00
@realpg 在 stackoverflow 一个小角落发现了答案:word.Selection.InsertBreak() ^_^
geelaw
2020-10-10 22:58:22 +08:00
我觉得很诡异的是楼主都用 win32com 了居然没发现 VBA 和 win32com 都只是 COM 的投影罢了。
opengps
2020-10-11 01:03:23 +08:00
我不懂 python,但我尝试给楼主支个招试试看:
既然已经做到了文件拼接文件,那么完全可以变通一下:让文件拼接文件的时候,多拼接一个“换页文件”来搞定,不过这里只解决了间隔问题,能否进一步让新文件处于新页的首行还得进一步考虑下
golp2000
2020-10-11 09:53:38 +08:00
@geelaw 主要我也是个新手,搜到了一个合并 word 的代码,跑起来能够达到我的目的就直接用了 (汗),但最后看结果不太满意想要自己增加一点功能,依靠搜索引擎的 CV 选手就这水平了:(
lithbitren
2020-10-12 14:54:01 +08:00
有些操作简单但是接口复杂的一次性办公问题,都直接写按键脚本了,low 但是有效

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/713789

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX