Note: The other languages of the website are Google-translated. Back to English
Accedi  \/ 
x
or
x
Registrati  \/ 
x

or

Come dividere un documento di Word in file separati ogni 5 on pagine?

Se si dispone di un documento Word di grandi dimensioni che contiene centinaia di pagine e ora, si desidera dividere questo documento in file separati ogni 10 on pagine. Esiste un modo semplice e veloce per risolvere questo lavoro senza copiare e incollare le pagine una per una?

Dividi un documento di Word in file separati ogni 10 on pagine con codice VBA

Dividi un documento di Word in file separati ogni 10 on pagine con una funzionalità straordinaria


Dividi un documento di Word in file separati ogni 10 on pagine con codice VBA

Per dividere un documento di grandi dimensioni in file separati basati su ogni 10 on pagine, il seguente codice VBA può farti un favore, per favore fai come segue:

1. Tieni premuto il ALT + F11 chiavi per aprire il Microsoft Visual Basic, Applications Edition finestra.

2. Quindi fare clic su inserire > Modulo, copia e incolla sotto il codice nel modulo vuoto aperto:

Codice VBA: dividi un documento in file separati ogni 10 on pagine:

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. Dopo aver incollato il codice sopra, sempre nel file Microsoft Visual Basic, Applications Edition finestra, fare clic Strumenti > Referenze, e nel saltò fuori Referenze-Progetto finestra di dialogo, controllare Espressioni regolari di Microsoft VBScript 5.5 opzione nel Riferimenti disponibili casella di riepilogo, vedi screenshot:

4. Quindi fare clic OK pulsante, quindi premere F5 chiave per eseguire questo codice e un file Sfoglia per cartella viene visualizzata la finestra di dialogo, selezionare una cartella in cui si desidera inserire i file divisi, vedere screenshot:

5. Quindi fare clic OK pulsante e viene visualizzata un'altra finestra di messaggio per ricordarti di inserire il numero di conteggio delle pagine che desideri dividere in base a, vedi screenshot:

6. E poi clicca OK pulsante, il documento Word attivo è stato suddiviso in file separati ogni 10 pagine, puoi andare nella cartella specificata per vedere i risultati:


Dividi un documento di Word in file separati ogni 10 on pagine con una funzionalità straordinaria

Kutools for Word include una potente funzionalità: Diviso funzione, con questa utility, puoi dividere rapidamente un documento Word di grandi dimensioni in più file separati in base a Intestazione1, interruzione di pagina, interruzione di sezione e pagina.

Suggerimenti:Per applicare questo Diviso in primo luogo, dovresti scaricare il file Kutools for Worde quindi applica la funzione in modo rapido e semplice.

Dopo l'installazione Kutools for Word, per favore fai come questo:

1. Clic Kutools Plus > Diviso, vedi screenshot:

2. Nella finestra di dialogo saltata fuori, imposta le seguenti operazioni di cui hai bisogno, vedi screenshot:

3. Dopo aver terminato le impostazioni, fare clic su OKe l'intero documento verrà suddiviso in più file in base a ciascuna pagina, vedi screenshot:

Fai clic per scaricare Kutools per Word e prova gratuita ora!


Strumenti di produttività Word consigliati

 

Kutools per Word: oltre 100 funzionalità avanzate per Word, risparmia il 50% del tempo

  • Le operazioni complicate e ripetute possono essere eseguite una sola volta in pochi secondi.
  • Inserisci più immagini tra le cartelle nel documento di Word contemporaneamente.
  • Unisci e combina più file di Word tra cartelle in uno con l'ordine desiderato.
  • Suddividi il documento corrente in documenti separati in base a titolo, interruzione di sezione o altri criteri.
  • Converti file tra Doc e Docx, Docx e PDF, raccolta di strumenti per conversioni e selezioni comuni e così via ...
Say something here...
symbols left.
You are guest
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    T-na · 1 years ago
    this code gives compile error which shows user define type is not define

  • To post as a guest, your comment is unpublished.
    Mike · 2 years ago
    For me, the VBA creates a single document that is a copy of the original and that's it.
  • To post as a guest, your comment is unpublished.
    Studia · 2 years ago
    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
    • To post as a guest, your comment is unpublished.
      skyyang · 2 years ago
      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!
  • To post as a guest, your comment is unpublished.
    Sergey · 2 years ago
    VBA Script: Split a document into separate files every 10 or n pages not worked
    • To post as a guest, your comment is unpublished.
      skyyang · 2 years ago
      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?
  • To post as a guest, your comment is unpublished.
    Lena · 2 years ago
    i have been trying to split a word file of 166 pages and it gives 166 files each with 166 pages?