como guardar cada hoja de un documento como un archivo independien

15/01/2007 - 03:44 por matias | Informe spam
Estoy convinando correspondencia y tengo todas la formas en un solo archivo,
pero me las piden por separado, la pregunta es si hay una forma automatizada
de dividir un documento word en varios archivos, por ejemplo que cada hoja de
un documento word se guarde como un archivo independiente.
 

Leer las respuestas

#1 Tux
15/01/2007 - 21:56 | Informe spam
matias a couché sur son écran :
Estoy convinando correspondencia y tengo todas la formas en un solo archivo,
pero me las piden por separado, la pregunta es si hay una forma automatizada
de dividir un documento word en varios archivos, por ejemplo que cada hoja de
un documento word se guarde como un archivo independiente.



Hola Matias :-)

Puedes probar con este codigo, antes de nada:

1º Create una carpeta y en ella pon el documento que quieras separar.
(puedes crearte una copia del documento para probrar este codigo)

2º En ese documento en el editor de Visual Basic, inserta un modulo y
copia y pega el codigo que pondre abajo.

3º Cuando ejecutes el codigo ¡¡¡¡¡OJO es imprencisdible que el curso
este obligatoriamente al inicio del docuemnto !!!! <<<<<<

4º Inserta Numero de pagina Tambien imprescindible (si no deseas ver el
numero de pagina ponlo en color blanco pero sin numero de pagina no te
funcionara el codigo :-(

5º Si tu documento tiene 50 paginas >>>> añade una mas en blanco
(puesto que asi quedara con mas precision el codigo)

6º En el codigo solo tendras que cambiar la ruta de tu Carpeta veras
que yo he puesto esta:

ChangeFileOpenDirectory _
"C:\Documents and Settings\usuario\Escritorio\Mi Carpeta\"

Tu cambiala por tu ruta <<< ¡Cuidado con ponerla exacta y tener [ \ ]
al final de esa ruta !!! >>>

'

Sub Guardar_hojas_Independientes_Word()

'Macro modificada By Monica de un Codigo Original _
por Doug Robbins

Dim Contador As String



Selection.HomeKey Unit:=wdStory


Paginas = ActiveDocument.BuiltInDocumentProperties(wdPropertyPages)


Contador = 0


While Contador < Paginas


Contador = Contador + 1


NombreDoc = "Pagina_" & Format(Contador)

On Error Resume Next

ActiveDocument.Bookmarks("\Page").Range.Cut


Documents.Add


Selection.Paste
Selection.TypeBackspace

ChangeFileOpenDirectory _
"C:\Documents and Settings\usuario\Escritorio\Mi Carpeta\"

ActiveDocument.SaveAs FileName:=NombreDoc, _
FileFormat:=wdFormatDocument, _
AddToRecentFiles:=True


ActiveWindow.Close

Wend

If Not Err.Number = 0 Then
MsgBox " Finalizado, ¡¡¡OK!!! :-) "
Exit Sub


End If
On Error GoTo 0

End Sub

'-

Y creo que no me he dejado nada mas!!!!

Pruebas y nos comentas ok? :-)

Saludos
Monica


¡Un Saludo! :-)
www.fermu.com
www.zorval.es

Preguntas similares