
Exportar automáticamente un documento a PDF desde Excel utilizando Word como plantilla implica varios pasos y el uso de VBA (Visual Basic for Applications) para automatizar el proceso. Aquí te guío en cómo hacerlo:
Requisitos previos:
- Conocer VBA: Necesitarás tener un conocimiento básico de VBA para escribir y entender el código.
- Archivo de Excel con datos: Debes tener un archivo de Excel con los datos que deseas usar.
- Plantilla de Word: Crear una plantilla en Word (`.dotx` o `.docx`) con marcadores de posición para los datos de Excel.
Pasos a seguir:
1. Crear la plantilla de Word:
- Abre Word y crea un documento nuevo.
- Agrega textos y usa marcadores (bookmarks) donde quieras insertar los datos desde Excel.
- Guarda el archivo como una plantilla de Word (`.dotx` o `.docx`).
2. Preparar el archivo de Excel:
- Asegúrate de tener los datos organizados, por ejemplo, en una hoja de cálculo en particular.
- Guarda el archivo de Excel.
3. Crear el Script VBA:
Sub ExportToPDFUsingWordTemplate()
Dim wdApp As Object
Dim wdDoc As Object
Dim xlSheet As Worksheet
Dim rng As Range
' Definir la hoja de cálculo y el rango con los datos
Set xlSheet = ThisWorkbook.Sheets("Sheet1") ' Cambia "Sheet1" al nombre de tu hoja
Set rng = xlSheet.Range("A1:B10") ' Cambia esto al rango que contiene los datos
' Crear una instancia de Word
On Error Resume Next
Set wdApp = GetObject(, "Word.Application")
If wdApp Is Nothing Then
Set wdApp = CreateObject("Word.Application")
End If
On Error GoTo 0
' Abre la plantilla de Word
Set wdDoc = wdApp.Documents.Open("C:rutaatuplantilla.dotx") ' Cambia con la ruta correcta de tu plantilla
' Insertar datos de Excel en marcadores de Word
With wdDoc
.Bookmarks("Bookmark1").Range.Text = rng.Cells(1, 1).Value ' Cambia "Bookmark1" por el nombre de tu marcador
' Añade más líneas para más marcadores si es necesario
End With
' Guardar el documento como PDF
wdDoc.ExportAsFixedFormat "C:rutadesalidadocumento.pdf", 17 ' Cambia la ruta de salida
' Cerrar el documento de Word sin guardar cambios
wdDoc.Close False
wdApp.Quit
Set wdDoc = Nothing
Set wdApp = Nothing
End Sub
- Abre el archivo de Excel.
- Presiona `ALT + F11` para abrir el Editor de VBA.
- Inserta un nuevo módulo: clic derecho en el proyecto de VBA > Insertar > Módulo.
- Copia y pega el siguiente código de ejemplo, ajustándolo según tus necesidades:
4. Ejecutar la macro:
- Desde el menú del editor de VBA, ejecuta la macro `ExportToPDFUsingWordTemplate`.
- Asegúrate de que las rutas del archivo de Word y el PDF estén correctas.
Notas adicionales:
- Permisos: Asegúrate de que Excel y Word puedan ejecutar macros en tu sistema (esto depende de la configuración de seguridad de Office).
- Errores y depuración: Verifica cada paso y realiza pruebas para asegurarte de que los datos se copian correctamente y el PDF se genera sin problemas.
Siguiendo estos pasos, deberías poder exportar automáticamente datos de Excel a un documento PDF usando Word como plantilla.
Conoce nuestros servicios



