Cómo insertar un documento de word mediante un Macrobutton

 

¿ Cómo crear un MACROBUTTON?

 

 

Un Macrobutton es un comando o código  de campo diseñado para ser ejecutado mediante  dos clic de ratón sobre el campo o bien mediante un clic y al realizar este clic el comando o código llama a una macro para automatizar una tarea. 

Su estructura es la siguiente:

 

 

                     { MACROBUTTON Macro1 Lunes }

 

[ Nombre del Campo Nombre de la macro  Palabra que se vera visible ]

 

Anotacion:

 

Para que el Macrobutton se ejecute con un click hace falta crear una línea de  código que al final del articulo explico .

 

¿Cómo insertar o como se crean estos campos?

 

Antes de crear el campo hemos de diseñar nuestra macro pero para ello vamos a ver un ejemplo:

 

Imaginaos que tenéis en vuestro documento de Word un apartado con los días de la semana :

 

Lunes

Martes

Miércoles

Etc...

 

Y queréis que al hacer click en [ Lunes  ] se inserte un archivo de vuestro de vuestro PC llamado [Mi_documento.Doc ] en el documento en el cual estáis trabajando, y que lo queréis insertar por ejemplo en la pagina 3 , pues bien vamos a ello:

 

Pulsamos [ Alt + F11 ]  para abrir el editor de Visual Basic , se nos abre el Editor de Código, ahora  nos vamos al menú  [ insertar > Modulo ] y ahí se nos abrirá a la derecha una ventana en blanco llamada  [Ventana de Programación ]  pues bien ahí insertamos nuestro código por ejemplo el siguiente código : [podéis hacer Copy-paste del código en esa ventana o bien escribirlo manualmente ]

 

 

Anotación:

 

El siguiente código, nos abre un inputbox en el cual introduciremos el número de la pagina en la que queramos insertar un archivo de Word y a continuación nos abre la ventana de dialogo [Abrir del menú Archivo ] el cual hacemos la búsqueda de nuestro archivo que queramos insertar. Y le damos a aceptar.

 

 

‘-----------------------------------------------------------

 

Sub Macro1()

 

Dim ruta As String

Dim x As String

 

x = InputBox("Insertar numero Pág...", "Introduzca el numero de pagina")

 

If x = "" Then Exit Sub

 

With Application.Dialogs(wdDialogFileOpen)

    .Display

    ruta = .Name

End With

 

If ruta <> "" Then

 

   With Selection

 

.GoTo What:=wdGoToPage, Which:=wdGoToNext, Name:=x

.InsertFile FileName:=ruta

 

End With

 

End If

 

End Sub

 

‘--------------------------------------------------

 

 

Una vez que tenemos nuestro código puesto en Visual Basic de Word, cerramos Visual Basic  para volver a la interfaz de Word,  o bien utilizamos para cerrar

 [Alt. + Q ]  ya nos vamos a crear el MacroButton.

 

Creación de  nuestro MacroButton

Nos vamos a Menú Insertar > Campo , apareciéndonos una ventana de dialogo como la siguiente: 

Seleccionamos Macrobutton , buscamos nuestro nombre de la macro y nos vamos al botón donde dice Códigos de Campo y Click ahí : Nos aparece la siguiente ventana de dialogo :

 

picture2

 

 

 

 

 

 

 

 

 

 

 

 

En la cual añadiremos en este caso escribiendo con el teclado Lunes como la siguiente imagen :

 

 picture3

 

 

 

 

 

 

 

 

 

Ya podemos darle a aceptar y veremos que se nos escribe en el documento :

 

                                  Lunes

 

Si le damos a Alt + F9 veremos el código de campo :

 

{ MACROBUTTON Macro1 Lunes }

Si ahora hacemos dos click  con el ratón Sobre La palabra Lunes se nos ejecutará nuestra macro que hemos creado anteriormente.

 

Bien Otra manera de Crear nuestro MACROBUTTON es la siguiente:

Seleccionamos la Palabra [  Lunes  ]  y nos vamos a ponerla de color azul y subrayada quedándonos así: [para que parezca un Hipervínculo o un Link ]

 

Lunes

Una vez realizado esto, la volvemos a seleccionar y le damos a la combinación de teclas:

Ctrl.+F9 

Esta combinación de Teclas hace que insertemos un Campo directamente sin tener que ir a Menú Insertar > Campo .

Entonces nos queda asi :
 

{  Lunes

}

 

Pues ahora a mano ya podemos escribir el campo y arreglarlo para dejarlo así:

 

{  MACROBUTTON Macro1 Lunes }

 

Luego ya para ver el campo y ejecutar nuestra macro darle a Alt.+F9

También podemos poner en lugar de Palabras como Lunes también podemos utilizar Símbolos como :

* un sobre  o un Telefono  (

simplemente quitando la palabra Lunes e insertar > Símbolo. y buscar la fuente Wingdings Smile

Y si tenemos muchas Palabras las cuales queremos que se ejecuten con la misma macro y no tener que estar una por una haciendo todo esto pues ,  para ello podemos crear una Macro e insertarla debajo de donde hemos insertado la anterior macro1 y que la llamaremos macro2 de tal forma que esta nueva macro hará lo siguiente:

Creara el MACROBUTTON instantáneamente osease al momento, para ello:

Seleccionamos la palabra Lunes y nos vamos a Herramientas > Macro > Macros y  dos click en donde dice Macro2  [o bien Alt.+ F8 y dos click en Macro2 ]

 

Y ya tendremos nuestro MACROBUTTON Creado.

 

Aquí la Macro2 :

 

‘----------------------------------------------------------

 

 

Sub Macro2()

 

 

    Selection.Fields.Add Range:=Selection.Range, Type:=wdFieldEmpty, _

        PreserveFormatting:=False

    Selection.TypeText Text:="MACROBUTTON Macro1 "

    Selection.Fields.Update

 

End Sub

 

‘--------------------------------------------------------------------------

 

Anotación:

 

Si queremos que se ejecute con un click nuestro MACROBUTTON simplemente hemos de poner por ejemplo en [ Thisworkbook ] :

 

Private Sub Document_Open()

Options.ButtonFieldClicks = 1

End Sub

 

Asi al abrir el documento todos los Macrobutton creados se ejecutaran con un solo Click

 

 

Y bien hay otras maneras también de Insertar en nuestro documento otros documentos  pero eso ya lo dejo para otro día.

 

En nuestra pagina de descargas podreís descargar un archivo con un ejemplo en concreto.

Espero que sea de vuestra utilidad,  y si cualquier duda o pregunta por aquí andaremos ok? Smile

 

Besos 

Mónica [Tux jejeje!!!] 

{jos_sb_discuss:6} 

Top