Przejdź do głównej zawartości

Jak podzielić dokument Word na osobne pliki co 5 lub n stron?

Jeśli masz duży dokument Word, który zawiera setki stron, a teraz chciałbyś podzielić ten dokument na oddzielne pliki co 10 lub n stron. Czy istnieje szybki i łatwy sposób rozwiązania tego zadania bez kopiowania i wklejania stron pojedynczo?

Podziel dokument Word na oddzielne pliki co 10 lub n stron z kodem VBA

Podziel dokument Word na osobne pliki co 10 lub n stron dzięki niesamowitej funkcji


Podziel dokument Word na oddzielne pliki co 10 lub n stron z kodem VBA

Aby podzielić duży dokument na osobne pliki na podstawie każdych 10 lub n stron, następujący kod VBA może wyświadczyć ci przysługę, wykonaj następujące czynności:

1. Przytrzymaj ALT + F11 klawisze, aby otworzyć Microsoft Visual Basic for Applications okno.

2. A następnie kliknij wstawka > Modułskopiuj i wklej poniższy kod do otwartego pustego modułu:

Kod VBA: Podziel dokument na osobne pliki co 10 lub n stron:

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. Po wklejeniu powyższego kodu nadal w Microsoft Visual Basic for Applications kliknij Tools > Referencjei wyskoczył Referencje-projekt okno dialogowe, zaznacz Wyrażenia regularne Microsoft VBScript 5.5 opcja w Dostępne referencje pole listy, zobacz zrzut ekranu:

4. Następnie kliknij OK , a następnie naciśnij F5 klucz do uruchomienia tego kodu oraz plik Przeglądaj w poszukiwaniu folderu zostanie wyświetlone okno dialogowe, wybierz folder, w którym chcesz umieścić podzielone pliki, zobacz zrzut ekranu:

5. Następnie kliknij OK i pojawi się kolejne okno zachęty, aby przypomnieć o wprowadzeniu liczby stron, na podstawie której chcesz podzielić, patrz zrzut ekranu:

6. A następnie kliknij OK przycisk, aktywny dokument Word został podzielony na oddzielne pliki co 10 stron, możesz przejść do określonego folderu, aby zobaczyć wyniki:


Podziel dokument Word na osobne pliki co 10 lub n stron dzięki niesamowitej funkcji

Kutools dla Worda zawiera potężną funkcję Split Dzięki temu narzędziu możesz szybko podzielić duży dokument programu Word na wiele oddzielnych plików na podstawie Nagłówek1, podziału strony, podziału sekcji i strony.

Porady:Aby to zastosować Split Po pierwsze, należy pobrać plik Kutools dla Worda, a następnie szybko i łatwo zastosuj tę funkcję.

Po zainstalowaniu Kutools dla Worda, zrób tak:

1. Kliknij Kutools Plus > Splitzobacz zrzut ekranu:

2. W wyskakującym oknie dialogowym ustaw następujące operacje zgodnie z potrzebami, patrz zrzut ekranu:

3. Po zakończeniu ustawień kliknij OK, a cały dokument zostanie podzielony na wiele plików na podstawie każdej strony, patrz zrzut ekranu:

Kliknij, aby pobrać Kutools for Word i bezpłatną wersję próbną już teraz!

Najlepsze narzędzia biurowe

Kutools dla Worda - Podnieś swoje doświadczenie ze słowami dzięki Over 100 Niezwykłe funkcje!

🤖 Kutools Asystent AI: Zmień swoje pisanie dzięki AI - Generuj zawartość  /  Przepisz tekst  /  Podsumowanie dokumentów  /  Zapytaj o informacje na podstawie Dokumentu, wszystko w programie Word

📘 Znajomość dokumentów: Podziel strony  /  Scal dokumenty  /  Eksportuj zaznaczenie w różnych formatach (PDF/TXT/DOC/HTML...)  /  Wsadowa konwersja do formatu PDF  /  Eksportuj strony jako obrazy  /  Drukuj wiele plików jednocześnie...

Edycja treści: Znajdź i zamień partii w wielu plikach  /  Zmień rozmiar wszystkich zdjęć  /  Transponuj wiersze i kolumny tabeli  /  Konwertuj tabelę na tekst...

🧹 Łatwe czyszczenie: Wymień Dodatkowe przestrzenie  /  Podziały sekcji  /  Wszystkie nagłówki  /  Pola tekstowe  /  Hiperłącza  / Więcej narzędzi do usuwania znajdziesz na naszej stronie Usuń grupę...

Kreatywne wstawki: Wstawić Tysiące separatorów  /  Pola wyboru  /  Przyciski Radio  /  Kod QR  /  kod kreskowy  /  Tabela linii ukośnych  /  Podpis równania  /  Tytuł Zdjęcia  /  Podpis tabeli  /  Wiele zdjęć  / Odkryj więcej w Wstaw grupę...

🔍 Precyzyjne wybory: Punktowy konkretne strony  /  stoły  /  kształty  /  nagłówki akapitów  / Ulepsz nawigację za pomocą jeszcze Wybierz funkcje...

Ulepszenia gwiazd: Nawiguj szybko do dowolnej lokalizacji  /  automatyczne wstawianie powtarzającego się tekstu  /  płynnie przełączaj się pomiędzy oknami dokumentów  /  11 Narzędzia konwersji...

???? Chcesz wypróbować te funkcje? Kutools dla Word oferuje Bezpłatna wersja próbna 60-day, bez ograniczeń! 🚀
 
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