Salt la conținutul principal

Cum să împărțiți un document Word în fișiere separate la fiecare 5 sau n pagini?

Dacă aveți un document Word mare care conține sute de pagini și acum, doriți să împărțiți acest document în fișiere separate la fiecare 10 sau n pagini. Există vreo modalitate rapidă și ușoară de a rezolva această lucrare fără a copia și lipi paginile una câte una?

Împarte un document Word în fișiere separate la fiecare 10 sau n pagini cu cod VBA

Împarte un document Word în fișiere separate la fiecare 10 sau n pagini cu o caracteristică uimitoare


Împarte un document Word în fișiere separate la fiecare 10 sau n pagini cu cod VBA

Pentru a împărți un document mare în fișiere separate bazate pe fiecare 10 sau n pagini, următorul cod VBA vă poate face o favoare, vă rugăm să procedați astfel:

1. Țineți apăsat butonul ALT + F11 tastele pentru a deschide Microsoft Visual Basic pentru aplicații fereastră.

2. Apoi, faceți clic Insera > Module, copiați și lipiți codul de mai jos în modulul gol deschis:

Cod VBA: împarte un document în fișiere separate la fiecare 10 sau n pagini:

Sub DocumentSplitter()
    Dim xDoc As Document, xNewDoc As Document
    Dim xSplit As String, xCount As Long, xLast As Long
    Dim xRngSplit As Range, xDocName As String, xFileExt As String
    Dim xRegEx As RegExp
    Dim xPageCount As Integer
    Dim xShell As Object, xFolder As Object, xFolderItem As Object
    Dim xFilePath As String
    On Error Resume Next
    Set xDoc = Application.ActiveDocument
    Set xShell = CreateObject("Shell.Application")
    Set xFolder = xShell.BrowseforFolder(0, "Select a Folder:", 0, 0)
    If TypeName(xFolder) = "Nothing" Then Exit Sub
    Set xFolderItem = xFolder.Self
    xFilePath = xFolderItem.Path & "\"
    Application.ScreenUpdating = False
    Set xNewDoc = Documents.Add(Visible:=False)
    xDoc.Content.WholeStory
    xDoc.Content.Copy
    xNewDoc.Content.PasteAndFormat wdFormatOriginalFormatting
    With xNewDoc
        xPageCount = .ActiveWindow.Panes(1).Pages.Count
L1:     xSplit = InputBox("The document contains " & xPageCount & " pages." & _
                 vbCrLf & vbCrLf & " Please enter the page count you want to split:", "Kutools for Word", xSplit)
        If Len(Trim(xSplit)) = 0 Then Exit Sub
        Set xRegEx = New RegExp
        With xRegEx
            .MultiLine = False
            .Global = True
            .IgnoreCase = True
            .Pattern = "[^0-9]"
        End With
        If xRegEx.Test(xSplit) = True Then
            MsgBox "Please enter the page number:", vbInformation, "Kutools for Word"
            Exit Sub
        End If
        If VBA.Int(xSplit) >= xPageCount Then
            MsgBox "The number is greater than the document number." & vbCrLf & "Please re-enter", vbInformation, "Kutools for Word"
            GoTo L1
        End If
        xDocName = xDoc. Name
        xFileExt = VBA.Right(xDocName, Len(xDocName) - InStrRev(xDocName, ".") + 1)
        xDocName = Left(xDocName, InStrRev(xDocName, ".") - 1) & "_"
        xFilePath = xFilePath & xDocName
        For xCount = 0 To Int(xPageCount / xSplit)
            xPageCount = .ActiveWindow.Panes(1).Pages.Count
            If xPageCount > xSplit Then
                xLast = xSplit
            Else
                xLast = xPageCount
            End If
            Set xRngSplit = .GoTo(What:=wdGoToPage, Name:=xLast)
            Set xRngSplit = xRngSplit.GoTo(What:=wdGoToBookmark, Name:="\page")
            xRngSplit.Start = .Range.Start
            xRngSplit.Cut
            Documents.Add
            Selection.Paste
            ActiveDocument.SaveAs FileName:=xFilePath & xCount + 1 & xFileExt, AddToRecentFiles:=False
            ActiveWindow.Close
        Next xCount
        Set xRngSplit = Nothing
        xNewDoc.Close wdDoNotSaveChanges
        Set xNewDoc = Nothing
    End With
    Application.ScreenUpdating = True
End Sub

3. După lipirea codului de mai sus, încă în Microsoft Visual Basic pentru aplicații fereastra, faceți clic pe Instrumente > Referinte, și în pop-out Referințe-Proiect casetă de dialog, bifați Expresii regulate Microsoft VBScript 5.5 opțiune în Referințe disponibile casetă listă, vezi captura de ecran:

4. Apoi apasa OK , apoi apăsați F5 tasta pentru a rula acest cod și a Căutați dosarul se afișează caseta de dialog, selectați un folder în care doriți să introduceți fișierele împărțite, consultați captura de ecran:

5. Apoi apasa OK buton și o altă casetă de solicitare este afișată pentru a vă reaminti introducerea numărului de număr de pagini pe care doriți să îl împărțiți, vedeți captura de ecran:

6. Apoi faceți clic pe OK butonul, documentul Word activ a fost împărțit în fișiere separate la fiecare 10 pagini, puteți accesa folderul specificat pentru a vedea rezultatele:


Împarte un document Word în fișiere separate la fiecare 10 sau n pagini cu o caracteristică uimitoare

Kutools pentru Cuvânt include o caracteristică puternică- Despică funcție, cu acest utilitar, puteți împărți rapid un document Word mare în mai multe fișiere separate pe baza Heading1, break de pagină, break de secțiune și pagină.

Sfat:Pentru a aplica acest lucru Despică caracteristică, în primul rând, ar trebui să descărcați Kutools pentru Cuvânt, apoi aplicați caracteristica rapid și ușor.

După instalare Kutools pentru Cuvânt, vă rugăm să faceți acest lucru:

1. Clic Kutools Plus > Despică, vezi captura de ecran:

2. În caseta de dialog pop-out, vă rugăm să setați următoarele operații după cum aveți nevoie, vedeți captura de ecran:

3. După terminarea setărilor, faceți clic pe OK, iar întregul document va fi împărțit în mai multe fișiere pe baza fiecărei pagini, consultați captura de ecran:

Faceți clic pentru a descărca Kutools pentru Word și încercarea gratuită acum!

Cele mai bune instrumente de productivitate de birou

Kutools pentru Cuvânt - Crește-ți experiența Word cu Over 100 Caracteristici remarcabile!

🤖 Asistent AI Kutools: Transformă-ți scrisul cu AI - Generați conținut  /  Rescrie textul  /  Rezumat documente  /  Solicitați informații pe baza Documentului, toate în Cuvânt

📘 Stăpânirea documentelor: Pagini împărțite  /  Fuzionați documente  /  Exportați selecția în diferite formate (PDF/TXT/DOC/HTML...)  /  Conversie lot în PDF  /  Exportați paginile ca imagini  /  Imprimați mai multe fișiere simultan...

Editarea continutului: Găsiți și înlocuiți în lot peste mai multe fișiere  /  Redimensionați toate imaginile  /  Transpuneți rânduri și coloane de tabel  /  Convertiți tabelul în text...

🧹 Curățare fără efort: Îndepărtați Spații suplimentare  /  Secțiuni pauze  /  Toate anteturile  /  Casete text  /  hiperlinkuri  / Pentru mai multe instrumente de îndepărtare, mergeți la nostru Eliminați grupul...

Inserții creative: Inserați Mii de separatori  /  Casete de bifare  /  Butoane radio  /  QR Code  /  coduri de bare  /  Tabel cu linii diagonale  /  Legenda ecuației  /  Image Caption  /  Legenda tabelului  /  Imagini multiple  / Descoperiți mai multe în Inserați grupul...

???? Selectii de precizie: Repera cu precizie pagini specifice  /  tabele  /  forme  /  paragrafele de titlu  / Îmbunătățiți navigarea cu mai mult Selectați caracteristici...

Îmbunătățiri de stele: Navigați rapid în orice locație  /  inserarea automată a textului repetitiv  /  comutați fără probleme între ferestrele documentelor  /  11 Instrumente de conversie...

???? Vrei să încerci aceste funcții? Kutools pentru Word oferă a 60-zi de încercare gratuită, fără limitări! 🚀
 
Comments (8)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
good things. i used it to split with 1 page 1 word document, it was successful except that each document (after split), it has 2 pages in total although 2nd page is always blank. 
This comment was minimized by the moderator on the site
this code gives compile error which shows user define type is not define
This comment was minimized by the moderator on the site
For me, the VBA creates a single document that is a copy of the original and that's it.
This comment was minimized by the moderator on the site
The VBscript code made Word crash. I was trying to split a 32Mb Word file with many pages but it seems Word can't handle it through VBscript.
Thanks anyway
This comment was minimized by the moderator on the site
Hello, Studia,
The VBA code may crash when there is a large document, it is not stable, so I recommend you use our Kutools for Word tool, it has updated, and support to solve this task, you can download it and free trial 30 day.
Please try, thank you!
This comment was minimized by the moderator on the site
VBA Script: Split a document into separate files every 10 or n pages not worked
This comment was minimized by the moderator on the site
Hello, Sergey,
The above code works well in my Word document, which Word version do you use?
And which step went wrong in your operation?
This comment was minimized by the moderator on the site
i have been trying to split a word file of 166 pages and it gives 166 files each with 166 pages?
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations