Word文檔分割總結


Word文檔分割總結

方法:

1、 word創建子文件實現文件分割

2、 VBA實現

3、 網上分割合並的插件軟件

一、 word創建子文件實現文件分割

打開需要分割的文件 >> 視圖 >> 大綱視圖 >> 單擊選擇標題內容 >> 單擊顯示文檔 >> 單擊創建 >> 保存即可

clip_image002

clip_image004

clip_image006

clip_image008

 

二、 VBA實現

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

2、鍵入ALT+F11打開VBA編輯器,選擇菜單“插入-模塊”;

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 SplitEveryFivePagesAsDocuments()

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 = 100 ' 修改這里控制每隔幾頁分割一次

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 + 1) & "." & 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

 

三、 網上分割合並的插件軟件(請自行搜索word分割文件軟件)

 

總結

 

方法一比較簡單方便,分割較大的word文件比較容易;

方法二分割也不錯,但我使用它來分割8M左右大文檔(加載需要10多分鍾)不可行,報錯或者內存不足,小文件還是很方便的;

方法三自動化,大文件沒試過。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM