日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python分解word文档为多个_将一个word文档按一页或多页拆分成多个文档

發布時間:2025/4/16 python 57 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python分解word文档为多个_将一个word文档按一页或多页拆分成多个文档 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

工作中,有時候碰到需要將一個比較大的word按照指定的頁數分割成若干個小的word文檔,下面提供分割的方法供參考:

一、按照單頁拆分

1、在Word里面打開那個需要分割的文檔(假設它的文件名叫做“test.doc”);

2、鍵入ALT+F11打開VBA編輯器,選擇菜單“插入-模塊”,或者鍵入ALT+F8打開宏命令窗口,或者點文檔內上面的“工具”→“宏”→“宏”→找到這個宏→“運行”即可;

3、粘貼下面的代碼:

Option Explicit

Sub SplitPagesAsDocuments()

Dim oSrcDoc As Document, oNewDoc As Document

Dim strSrcName As String, strNewName As String

Dim oRange As Range

Dim nIndex As Integer

Dim fso As Object

Set fso = CreateObject("Scripting.FileSystemObject")

Set oSrcDoc = ActiveDocument

Set oRange = oSrcDoc.Content

oRange.Collapse wdCollapseStart

oRange.Select

For nIndex = 1 To ActiveDocument.Content.Information(wdNumberOfPagesInDocument)

oSrcDoc.Bookmarks("\page").Range.Copy

oSrcDoc.Windows(1).Activate

Application.Browser.Target = wdBrowsePage

Application.Browser.Next

strSrcName = oSrcDoc.FullName

strNewName = fso.BuildPath(fso.GetParentFolderName(strSrcName), _

fso.GetBaseName(strSrcName) & "_" & nIndex & "." & fso.GetExtensionName(strSrcName))

Set oNewDoc = Documents.Add

Selection.Paste

oNewDoc.SaveAs strNewName

oNewDoc.Close False

Next

Set oNewDoc = Nothing

Set oRange = Nothing

Set oSrcDoc = Nothing

Set fso = Nothing

MsgBox "結束!"

End Sub

4、鍵入F5運行,看到“完成!”結束。

5、檢查當前文檔所在路徑下是否生成若干名為“原始文檔_n.doc”(n代表其對應原始文檔中的第幾頁)的文檔,檢查它們的內容是否就對應于原始文檔每個頁面的內容。

二、按指定頁動態拆分

上述方法是按單頁拆分的,如果想按照指定頁數拆分,可使用下面的代碼,其它步驟和上述按單頁拆分方案相同。

代碼如下:

Option Explicit

Sub DynamicSplitPagesAsDocuments()

Dim oSrcDoc As Document, oNewDoc As Document

Dim strSrcName As String, strNewName As String

Dim oRange As Range

Dim nIndex As Integer, nSubIndex As Integer, nTotalPages As Integer, nBound As Integer

Dim fso As Object

Const nSteps = 3 //這里可以指定需要拆分的頁數,如這里表示按照每3頁拆分成一個小文檔

Set fso = CreateObject("Scripting.FileSystemObject")

Set oSrcDoc = ActiveDocument

Set oRange = oSrcDoc.Content

nTotalPages = ActiveDocument.Content.Information(wdNumberOfPagesInDocument)

oRange.Collapse wdCollapseStart

oRange.Select

For nIndex = 1 To nTotalPages Step nSteps

Set oNewDoc = Documents.Add

If nIndex + nSteps > nTotalPages Then

nBound = nTotalPages

Else

nBound = nIndex + nSteps - 1

End If

For nSubIndex = nIndex To nBound

oSrcDoc.Activate

oSrcDoc.Bookmarks("\page").Range.Copy

oSrcDoc.Windows(1).Activate

Application.Browser.Target = wdBrowsePage

Application.Browser.Next

oNewDoc.Activate

oNewDoc.Windows(1).Selection.Paste

Next nSubIndex

strSrcName = oSrcDoc.FullName

strNewName = fso.BuildPath(fso.GetParentFolderName(strSrcName), _

fso.GetBaseName(strSrcName) & "_" & (nIndex \ nSteps) & "." & fso.GetExtensionName(strSrcName))

oNewDoc.SaveAs strNewName

oNewDoc.Close False

Next nIndex

Set oNewDoc = Nothing

Set oRange = Nothing

Set oSrcDoc = Nothing

Set fso = Nothing

MsgBox "結束!"

End Sub

注意:

如文檔中有分節符分解后的文檔會出現空白頁,如要分解后不出現空白頁,需要把文檔中的分節符全部刪除。

分節符若全部替換,要注意替換后文檔可能會出現排版混亂,這則需要自己手動排版了。

分節符是指為表示節的結尾插入的標記。分節符包含節的格式設置元素,如頁邊距、頁面的方向、頁眉和頁腳,以及頁碼的順序。分節符用一條橫貫屏幕的虛雙線表示。

刪除分節符的方法:

試著按住shift鍵,然后點擊鼠標左鍵,然后將顯示出來的分節符刪掉即可。

分節符和分頁符的區別:

分頁符只是分頁,前后還是同一節;

分節符是分節,可以同一頁中不同節,也可以分節的同時下一頁。

兩者用法的最大區別在于頁眉頁腳與頁面設置,比如:

1、文檔編排中,某幾頁需要橫排,或者需要不同的紙張、頁邊距等,那么將這幾頁單獨設為一節,與前后內容不同節;

2、文檔編排中,首頁、目錄等的頁眉頁腳、頁碼與正文部分需要不同,那么將首頁、目錄等作為單獨的節;

3、如果前后內容的頁面編排方式與頁眉頁腳都一樣,只是需要新的一頁開始新的一章,那么一般用分頁符即可,當然用分節符(下一頁)也行。

總結

以上是生活随笔為你收集整理的python分解word文档为多个_将一个word文档按一页或多页拆分成多个文档的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。