Macro, Crear documentos Word por cada usuario y a su vez, adjuntar archivos pdf en este documento
Debo ejecutar un código en VBA, el cual me permita crear documentos Word por cada usuario establecido en una tabla de Excel, cada usuario tiene 3 documentos pdf asociados que deben ir adjuntos a este Word, hasta el momento solo tengo el código que crea los documentos Word según una plantilla asignada, teniendo como nombre de documento los nombres de cada usuario y me los guarda en una carpeta. Ocupé los bookmarks de Word para ir adjuntando las partes que necesito pero no he logrado descifrar como adjuntar los pdf, ya que estos estarían guardados en una carpeta. El código cuenta con 2 funciones, la primera va guardando los datos de la tabla y la segunda crea el documento, agradecería cualquier ayuda por favor.
Type Persona
nombre As String
fecha As String
bio As String
noti As String
End Type
Sub principal()
Dim ws As Worksheet
Dim tablaDatos As ListObject
Dim fila As ListRow
Dim datosPersona As Persona
Set ws = ThisWorkbook.Sheets("Principal")
Set tablaDatos = ws.ListObjects("Datos")
Application.DisplayAlerts = False
Application.ScreenUpdating = False
For Each fila In tablaDatos.ListRows
datosPersona.nombre = fila.Range(1, 2)
datosPersona.fecha = fila.Range(1, 1).Text
datosPersona.bio = fila.Range(1, 6)
datosPersona.noti = fila.Range(1, 7)
Call crearDoc(datosPersona)
Next
End Sub
Sub crearDoc(datosPersona As Persona)
Dim objWord As Word.Application
Dim objdoc As Word.Document
Dim estaHoja As Worksheet
Dim rutaCarpeta As String, nombreDoc As String
Set estaHoja = ThisWorkbook.Sheets("Principal")
rutaCarpeta = Range("RutaCarpeta").Value
nombreDoc = Range("NombreArchivo").Value
Set objWord = New Word.Application
Set objdoc = objWord.Documents.Open(rutaCarpeta & nombreDoc)
objWord.Visible = True
With objdoc
.Bookmarks("Nombre").Range.Text = datosPersona.nombre
.Bookmarks("Fecha").Range.Text = datosPersona.fecha
.Bookmarks("Bio").Range.Text = datosPersona.bio
.Bookmarks("Noticias").Range.Text = datosPersona.noti
End With
nombreDoc = datosPersona.nombre & "_QA"
objdoc.SaveAs2 Filename:=rutaCarpeta & nombreDoc
Objdoc. Close
ObjWord. Quit
End Sub