Dividere un documento di word in più files separati

Ho avuto la necessità di separare un documento word in file separati per ogni capitolo.

E’ interessate in questo caso usare una piccola macro in VBA (Visual Basic fo Applications) per implementare una funzione apposita in Word.
Sembra difficile ma in realtà è più semplice del previsto.

Vediamo come:

La funzione ci permetterà di selezionare una parte di testo e salvare in un file separato la porzione di testo.
La macro utilizzerà i primi 10 caratteri del testo selezionato per dare il nome al file.

Per creare la macro è sufficiente richiamare la finestra di gestione macro premendo i tati ALT + F8 contemporaneamente.

A questo punto possiamo inserire il nome della macro (nell’esempio l’ho chiamata Split) e premere Crea.

Apparirà il nome della funzione nell’editor Visual Basic, in cui inseriremo il codice:

Sub Split()
    If Selection.Words.Count > 0 Then
    'Copia il testo selezionato
    Selection.Copy

    'Apre un nuovo documento e incolla il testo copiato
    Dim objNewDoc As Document
    Set objNewDoc = Documents.Add
    Selection.Paste

    'Prende i primi 10 caratteri e li usa per salvare il file
    Dim objFileName As Range
    Set objFileName = objNewDoc.Range(Start:=0, End:=10)
    'Specifichiamo un percorso valido per non avere errori
    objNewDoc.SaveAs FileName:="C:\Users\user\Desktop\wordsplit\" & objFileName & ".docx"
    Else

    End If
End Sub

A questo punto potremo salvare e chiudere l’editor.

Ora selezionando una parte di testo dal documento di Word e premendo nuovamente ALT + F8 potremo eseguire la Macro, che salverà automaticamente il nuovo file nel percorso specificato.

Questo articolo è stato tratto da questo in lingua inglese.

Un altro metodo interessante, che ci permette di specificare anche dei delimitatori preimpostati, potete trovarlo a questo indirizzo (sempre in inglese).

Sperando questo articolo vi possa essere utile vi invito a lasciare un commento sul blog.