Como Crear un Formulario en Word VBA

Paso a paso

Citation
, XML
Authors

Abstract

LA automatización de formularios en Word es una de las aplicaciones más útiles y poderosas del VBA, mostraré paso a paso como hacer un ejemplo sencillo que puede modificarse y adaptarse a muchos otros formatos

Paso a paso

Descargar FormularioSencillo.txt desde AQUI
Abrir una carpeta llamada Formulario
Copiar FormularioSencillo.txt a la carpeta

Botón derecho
Nuevo
Nuevo documento del Word
Cambiar nombre a FormularioConMacros.doc

Herramientas
Opciones
Seguridad
Seguridad de macros (cambiar a medio)
Herramientas
Macro
Macros
Nombre de la macro: formulario1
Macros en: FormularioConMacros.doc (documento)
Crear

Sub formulario1()

‘ formulario1 Macro
‘ Macro creada el 26/07/2010 por INTEL

End Sub

Escribir arriba del End Sub
    UserForm1.show

Insertar
UserForm
(si el cuadro de herramientas no se ve) ver, Cuadro de Herramientas
Crear Userform con 3 labels, 3 textboxes y 1 commandbuttom
como muestra la figura siguiente

Abrir FormularioSencillo.txt
Colocar el cursor sobre el texto
Boton derecho, Seleccionar todo.Botón derecho, Copiar
Cerrar
Volver a FormularioCon Macros.doc
Doble clic en CommandButton!, debe aparecer
Private Sub CommandButton1_Click()

End Sub
Colocar cursor arriba de End Sub
Botón derecho, pegar
Clic en “Grabar”
Salir del editor e ir a la página en blanco de Word

Poner mouse sobre barra de herramientas
Boton derecho, personalizar
Macros
Guardar en: FormularioConMacros.doc
Project.NewMacros.formulrio1
Con la ventana “personalizar” abierta
Botón derecho, cambiar imagen del botón
Grabar la página

Eso es todo, haciendo click sobre el nuevo botón se comienza a ejecutar el macro.

El código del macro es:

 
‘ Programa para llenar automáticamente un formulario en word
‘ Lo que está escrito con comilla simple son solo comentarios para explicar el programas, pueden omitirse
‘ With… EndWith sirve para no tener que repetir la misma instrucción en cada línea, en este caso Selection

With Selection
          .ParagraphFormat.LineSpacingRule = wdLineSpaceSingle      ‘Coloca espacio de líneas en “espacio simple”
          .TypeParagraph                        ‘Pasa a linea siguiente
          .TypeParagraph                        ‘Pasa a linea siguiente
          .Font.Bold = True                         ‘Coloca negrita
          .TypeParagraph                        ‘Pasa a linea siguiente
          .TypeParagraph                        ‘Pasa a linea siguiente
          .TypeParagraph                        ‘Pasa a linea siguiente
          .Font.Size = 16                       ‘Coloca tamaño de letra en 16
          .ParagraphFormat.Alignment = wdAlignParagraphCenter       ‘Alineado al centro
          .TypeText Text:=”CERTIFICADO”         ‘Escribe texto
          .Font.Size = 12                       ‘Coloca tamaño de letra en 12
          .TypeParagraph                        ‘Pasa a linea siguiente
          .Font.Bold = False                            ‘Desactiva negrita
          .ParagraphFormat.Alignment = wdAlignParagraphLeft         ‘alineacion a la izquierda
          .TypeParagraph                        ‘Pasa a linea siguiente
          .TypeText Text:=”Certifico que el señor “         ‘Escribe texto
          .Font.Bold = True  ‘Activa las negritas           ‘Escribe texto
          .TypeText Text:=TextBox1.Text                     ‘Escribe el contenido de textbox1.text
          .Font.Bold = False                        ‘Desactiva las negritas
          .TypeText Text:=”, domciliado en “                ‘Escribe texto
          .TypeText Text:=TextBox2.Text                 ‘Escribe el contenido de textbox2.text
          .TypeText Text:=” teléfono “                  ‘Escribe texto
          .TypeText Text:=TextBox3.Text                 ‘Escribe el contenido de textbox3.text
          .TypeText Text:=” es una persona honorable, de buenas costumbres, “           ‘Escribe texto
          .TypeText Text:=” que no consume alcohol y su comportamiento moral es intachable.”    ‘Escribe texto
          .TypeParagraph                        ‘Pasa a linea siguiente
          .TypeParagraph                        ‘Pasa a linea siguiente
          .TypeText Text:=” Se extiende el presente certificado a petición “            ‘Escribe texto
          .TypeText Text:=” del interesado con objeto de su postulación al Opus Dei”        ‘Escribe texto
          .TypeParagraph                        ‘Pasa a linea siguiente
          .TypeParagraph                        ‘Pasa a linea siguiente
          .Font.Name = “Arial”                      ‘Cambia el font a Arial
          .Font.Size = 10                       ‘Coloca tamaño en 10
          .TypeText Text:=”Arica “                  ‘Escribe texto
          .TypeText Text:=Date$                     ‘Escribe la fecha
          .TypeParagraph                        ‘Pasa a linea siguiente
          .TypeParagraph                        ‘Pasa a linea siguiente
          .TypeParagraph                        ‘Pasa a linea siguiente
          .TypeParagraph                        ‘Pasa a linea siguiente
          .TypeParagraph                        ‘Pasa a linea siguiente
          .TypeParagraph                        ‘Pasa a linea siguiente
          .TypeParagraph                        ‘Pasa a linea siguiente
          .TypeParagraph                        ‘Pasa a linea siguiente
          .ParagraphFormat.Alignment = wdAlignParagraphCenter       ‘Alineación al centro
          .Font.Bold = True                     ‘Activa negritas
          .TypeText Text:=” RR. PP. TOMAS BRADANOVIC S.J. “     ‘Escribe texto
          .Font.Bold = False                        ‘Desactiva negritas
    End With                                ‘Termina el ciclo Selection
    Unload UserForm1