Macros

Páginas: 5 (1096 palabras) Publicado: 24 de abril de 2013
PROGRAMANDO MACROS EN EL EDITOR DE VBASIC – EXCEL AVANZADO

ELABORAR UNA CONSULTA MEDIANTE MACROS EN EXCEL 2007
Macro que permite generar una Consulta elaborada en Excel 2007. Todo Registro de información debe de
tener su propia Consultar, Eliminar e Insertar, primeramente en poder consultar la información que ya
se escribió en la Hoja de Excel, obviamente desde una Macro combinada conVisual Basic, miren el
siguiente ejemplo:
Parte I
1. Presione La Teclas Alt + F11, para entrar al editor de Visual Basic.
2. Activa las siguientes opciones:
De clic en el Menú Ver y elija la opción Explorador de Proyectos
De clic en el Menú ver y elija la opción Ventana Propiedades
3. Del Menú Insertar elija la Opción UserForm. Esto inserta el Formulario que programaremos con
controles. En elExplorador de Proyecto se observara que se inserto el UserForm.
Ahora crearas un formulario con el siguiente aspecto:

el formulario tendrá:
Tres etiquetas
Tres Textbox
Tres Botones de Comando
Los datos que se preguntaran serán Nombre, Dirección y Teléfono. Los tres botones nos servirán para lo
siguiente: Consultar consultara la información que hayamos insertado desde el botón insertar.Eliminar
podrá eliminar algún dato que se consulto y no lo queremos. Insertar tendrá la función de insertar los
registros que vayamos dando de alta, es como los ejercicios anteriores. A continuación se muestra como se
deben de programar estos Controles:

TELECENTROS MUNICIPALES - AMST

1

PROGRAMANDO MACROS EN EL EDITOR DE VBASIC – EXCEL AVANZADO

Programación de los Controles:
BOTON DECONSULTA
Private Sub CommandButton1_Click()
Cells.Find(What:=TextBox1, After:=ActiveCell, LookIn:=xlFormulas, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
False).Activate
ActiveCell.Offset(0, 1).Select
TextBox2 = ActiveCell
Rem la línea que contiene el ActiveCell.Offset(0, 1).Select permite moverse una columna a la derecha, por
lo tanto después de labúsqueda de las primeras líneas con Cell.Find si encuentra el Nombre de la persona
se mueve a la siguiente columna y la línea TextBox2 = ActiveCell Permite capturar el valor de la celda al
Textbox2 y así mostrar el dato de la celda en el TextBox2.
ActiveCell.Offset(0, 1).Select
TextBox3 = ActiveCell
Rem Cada vez que se escriba la línea ActiveCell.Offset(0, 1).Select significa que se tiene quemoverse
una columna a la derecha.
Rem Si el nombre que tratas de consultar no se encuentra podría generar un error porque fallaría el
Cell.Find esto puede ocurrir en el Word 97, yo trabajo con el Word 2000 o XP y no tengo ese problema. Pero
esto se solucionaría con una trampa de error.
End Sub
BOTON ELIMINAR
Private Sub CommandButton2_Click()
Selection.EntireRow.Delete
Range("A9").SelectTextBox1 = Empty
TextBox2 = Empty
TextBox3 = Empty
TextBox1.SetFocus
End Sub
BOTON INSERTAR
Private Sub CommandButton3_Click()
Range("A9").Select
Selection.EntireRow.Insert
TextBox1 = Empty
TextBox2 = Empty
TextBox3 = Empty
TextBox1.SetFocus

TELECENTROS MUNICIPALES - AMST

2

PROGRAMANDO MACROS EN EL EDITOR DE VBASIC – EXCEL AVANZADO

End Sub
CUADROS DE TEXTO
Private SubTextBox1_Change()
Range("A9").FormulaR1C1 = TextBox1
Rem esta primer línea reemplaza a estas dos…… que te parece todavía mas corta
Range("A9").Select
ActiveCell.FormulaR1C1 = TextBox1
End Sub
Private Sub TextBox2_Change()
Range("B9").FormulaR1C1 = TextBox2
End Sub
Private Sub TextBox3_Change()
Range("C9").FormulaR1C1 = TextBox3
End Sub
Si con el Botón Consulta tienes un error cuando noencuentra a la persona, entonces tendrás que agregar
esto a tu código del Botón Consultar
BOTON DE CONSULTA
Private Sub CommandButton1_Click()
On Error Goto noencontro
Rem esta línea genera una trampa de error si Excel encuentra un error se le dice que se vaya a la etiqueta
noencontro que esta definida mas adelante en el código. No use la trampa de error si no tiene problemas a
la hora de...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Macro
  • macros
  • Macro
  • macro
  • Macro
  • Macro
  • Macro
  • Macro

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS