Word VBA

3,589 views

Published on

En esta práctica vamos a utilizar el editor de código VBA y los controles Active X de tipo cuadro combinado y etiqueta para crear un glosario interactivo de términos de Word.

Published in: Education
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
3,589
On SlideShare
0
From Embeds
0
Number of Embeds
1,056
Actions
Shares
0
Downloads
0
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Word VBA

  1. 1. Materia: Word. Sección: Visual Basic para Aplicaciones (VBA). Nivel de Dificultad: Avanzado. Objetivo de la Práctica: Introducción a la programación VBA para Word.En esta práctica vamos a utilizar el editor de código VBA y los Controles Active X de tipo cuadrocombinado y etiqueta para crear un glosario interactivo de términos de Word. Cada vez queseleccionemos uno de los términos de la lista (combo superior), se mostrará su definición en el áreade texto (etiqueta inferior), tal como muestran las imágenes de resultado.Finalmente vamos a proteger el formulario contra modificaciones mediante contraseña. RESULTADO
  2. 2. PROCESO En primer lugar tenemos que guardar el documento que contiene el código VBA con la extensión.docm (archivo con macros). En segundo lugar, vamos habilitar temporalmente todas las macros Archivo->Opciones->Opcionesde Word->Centro de Confianza->Configuración del centro de confianza->Habilitar todas lasmacros…. Esta opción permite que se ejecuten todas las macros, por eso una vez que probemosnuestro ejercicio, volvemos a cambiar la configuración de macros a la opción Deshabilitar todas lasmacros con notificación. La ficha "Programador" tiene que estar habilitada. Para ello vamos a Archivo->Opciones y en elcuadro de diálogo "Opciones de Word" seleccionamos la opción "Personalizar cinta de opciones" yhabilitamos la ficha "Programador".
  3. 3. Añadimos en "Modo Diseño" los controles Active X que necesitamos, el combo (combobox) y laetiqueta (label). A continuación añadimos el código de forma que por un lado, al abrirse el documento (eventoOpen) se cargue el combo con los términos, y por otro lado, cada vez que seleccionamos un ítem delcombo (evento Change) se identifique el ítem y se muestre en la etiqueta la definicióncorrespondiente a la elección.
  4. 4. Private Sub Document_Open() Add list entries to combo box. The value of each entry matches the corresponding ListIndex value in the combo box. ComboBox1.AddItem "Combinación de correspondencia" ListIndex = 0 ComboBox1.AddItem "Complemento" ListIndex = 1 ComboBox1.AddItem "Diagrama en ciclo" ListIndex = 2 ComboBox1.AddItem "Diagrama en jerarquía" ListIndex = 3 ComboBox1.AddItem "Diagrama en lista" ListIndex = 4 ComboBox1.AddItem "Diagrama en matriz" ListIndex = 5 ComboBox1.AddItem "Campo combinado" ListIndex = 6 ComboBox1.AddItem "Consulta" ListIndex = 7 ComboBox1.AddItem "Gráficos apilados" ListIndex = 8 ComboBox1.AddItem "Lienzo de dibujo" ListIndex = 9 ComboBox1.AddItem "Línea huérfana" ListIndex = 10 ComboBox1.AddItem "Línea viuda" ListIndex = 11 ComboBox1.AddItem "Marcador" ListIndex = 12 Set combo box to first entry ComboBox1.ListIndex = 0 End Sub Private Sub ComboBox1_Change() Select Case ComboBox1.ListIndex item seleccionado. Case 0 Label1.Caption = "COMBINACIÓN DE CORRESPONDENCIA:" + vbCrLf + _ "Un proceso utilizado para personalizar documentos individuales basados " + _ "en información de un origen de datos." Case 1 Label1.Caption = "COMPLEMENTO:" + vbCrLf + _ "Una utilidad que añade una funcionalidad especializada a un programa." Case 2 Label1.Caption = "DIAGRAMA EN CICLO:" + vbCrLf + _ "Un tipo de diagrama utilizado para representar una secuencia circular de pasos," + _ "tareas o eventos; o la relación de un conjunto de tareas, pasos o eventos con un " + _ "elemento nuclear central." End Select End Sub Finalmente para proteger, mediante contraseña, el formulario contra cambios en el diseño vamosa (Ficha)Programador->(Grupo)Proteger->Restringir edición->Restringir formato y edición.

×