Escribir dentro de un "campo de formulario con texto" de Word desde una macro en Excel

Tengo un archivo excel donde completo datos de clientes los cuales, a través de una macro, son volcados en un nuevo documento word (el nuevo documento word creado por la macro hace una copia del archivo word original y tiene "palabras clave" para ser reemplazadas por las que están en excel).

Sub Completar_formulario()
Dim datos(0 To 1, 0 To 8) As String '(columna,fila)
patharch = ThisWorkbook.Path & "\plantilla.dot"
Set objWord = CreateObject("Word.Application")
objWord.Visible = True
objWord.documents.Add Template:=patharch, NewTemplate:=False, DocumentType:=0
datos(0, 0) = "rdia"
datos(1, 0) = Hoja1.Cells(1, 1) 'datos(columna,fila) = Hoja1.cells(fila,columna)
datos(0, 1) = "rmes"
datos(1, 1) = Hoja1.Cells(2, 1)
datos(0, 2) = "raño"
datos(1, 2) = Hoja1.Cells(3, 1)
datos(0, 3) = "rsolicitante"
datos(1, 3) = Hoja1.Cells(4, 1)
datos(0, 4) = "rsolicitud"
datos(1, 4) = Hoja1.Cells(5, 1)
datos(0, 5) = "rcuit"
datos(1, 5) = Hoja1.Cells(6, 1)
datos(0, 6) = "rmonton"
datos(1, 6) = Hoja1.Cells(7, 1)
datos(0, 7) = "rmontol"
datos(1, 7) = Hoja1.Cells(8, 1)
datos(0, 8) = "rbeneficio"
datos(1, 8) = Hoja1.Cells(9, 1)
For i = 0 To UBound(datos, 2)
textobuscar = datos(0, i)
objWord.Selection.Move 6, -1
objWord.Selection.Find.Execute FindText:=textobuscar
While objWord.Selection.Find.found = True
objWord.Selection.Text = datos(1, i) 'texto a reemplazar
objWord.Selection.Move 6, -1
objWord.Selection.Find.Execute FindText:=textobuscar
Wend
Next i
End Sub

¿Si quisiera escribir dentro de un "campo de formulario con texto" dentro de word llamado "DIA" cual sería la linea de código?

Probé con objWord.ActiveDocument.FormFields("DIA").Result = "18" pero no funciona.

1 respuesta

Respuesta
1

Prueba con el siguiente código

??? No veo ninguno!!!

Perdón, no sé qué pasó, que no se pegó, aquí lo pongo de nuevo

texto = "hola"
objWord.ActiveDocument.FormFields("Dia").TextInput.EditType _
Type:=wdRegular, Default:=texto

Saludos.Dante Amor
Si es lo que necesitas.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas