You are on page 1of 6

Private Sub botonbuscar_Click()

numerodedatos = Hoja1.Range("B" & Rows.Count).End(xlUp).Row

Lista = Clear
Lista.RowSource = Clear

For fila = 4 To numerodedatos


titulo = ActiveSheet.Cells(fila, 3).Value

If UCase(titulo) Like "*" & UCase(Me.TextBox1busqueda.Value) & "*" Then

Me.Lista.AddItem
Me.Lista.List(y, 0) = ActiveSheet.Cells(fila, 2).Value
Me.Lista.List(y, 1) = ActiveSheet.Cells(fila, 3).Value
Me.Lista.List(y, 2) = ActiveSheet.Cells(fila, 4).Value
Me.Lista.List(y, 3) = ActiveSheet.Cells(fila, 5).Value
Me.Lista.List(y, 4) = ActiveSheet.Cells(fila, 6).Value

y = y + 1
End If

Next

End Sub

Private Sub botoneditar_Click()


If Lista.ListIndex = -1 Then
MsgBox (" Selecione un dato")
Else

Miformulario.Height = 395
Me.botonagregar.Enabled = False
End If
End Sub

Private Sub botoneliminar_Click()


valor_buscado = Me.Txt_codigo.Value
datos = Txt_titulo.Value & "" & Txt_autor.Value
On Error Resume Next

If Lista.ListIndex = -1 Then

MsgBox (" Selecione un dato")


Else
respuesta = Application.InputBox("Desesa eliminar registro:" & datos,
"Ingrese clave")

If respuesta = "70909354" Then

Set fila = Sheets("BD").Range("B:B").Find(valor_buscado, lookat:=xlWhole)


linea = fila.Row
Range("B" & linea).EntireRow.Delete
End If

End If

End Sub

Private Sub botonlimpiar_Click()


Miformulario.Height = 250
Me.Txt_titulo.Value = Empty
Me.Txt_autor.Value = Empty
Me.Txt_editar.Value = Empty
Me.Txt_año.Value = Empty

End Sub

Private Sub botonmodificar_Click()


Dim fila As Object
Dim linea As Integer
valor_buscado = Me.Txt_codigo
Set fila = Sheets("BD").Range("B:B").Find(valor_buscado, lookat:=xlWhole)
linea = fila.Row
Range("C" & linea).Value = Me.Txt_titulo.Value
Range("D" & linea).Value = Me.Txt_autor.Value
Range("E" & linea).Value = Me.Txt_editar.Value
Range("F" & linea).Value = Me.Txt_año.Value
End Sub

Private Sub botonregistrar_Click()


Miformulario.Height = 395
Me.botonmodificar.Enabled = False
Me.Txt_codigo.Value = Range("B2").Value
Me.botonagregar.Enabled = True
End Sub

Private Sub Lista_Click()


Dim codigo As Integer
codigo = Lista.List(Lista.ListIndex, 0)
Me.Txt_codigo.Value = codigo
Me.botonagregar.Enabled = False
Me.botonmodificar.Enabled = True

End Sub

Private Sub TextBox1busqueda_Change()

End Sub

Private Sub Txt_codigo_Change()


Dim codigo As Integer
codigo = Txt_codigo.Value
Me.Txt_titulo = Application.WorksheetFunction.VLookup(codigo,
Sheets("BD").Range("B:F"), 2, 0)
Me.Txt_autor = Application.WorksheetFunction.VLookup(codigo,
Sheets("BD").Range("B:F"), 3, 0)
Me.Txt_editar = Application.WorksheetFunction.VLookup(codigo,
Sheets("BD").Range("B:F"), 4, 0)
Me.Txt_año = Application.WorksheetFunction.VLookup(codigo,
Sheets("BD").Range("B:F"), 5, 0)
End Sub

Private Sub botonagregar_Click()


Range("B4").EntireRow.Insert
Range("B4").Value = Txt_codigo.Value
Range("C4").Value = Me.Txt_titulo.Value
Range("D4").Value = Me.Txt_autor.Value
Range("E4").Value = Me.Txt_editar.Value
Range("F4").Value = Me.Txt_año.Value
Txt_codigo.Value = Range("B2").Value
Me.Txt_titulo = Empty
Me.Txt_autor = Empty
Me.Txt_editar = Empty
Me.Txt_año = Empty
Me.Lista.RowSource = "Libros"
Me.Lista.ColumnCount = 5

End Sub

Private Sub UserForm_Activate()


Me.Lista.RowSource = "Libros"
Me.Lista.ColumnCount = 5
Miformulario.Height = 250
End Sub

El evento botonbuscar_Click se activa cuando se hace clic en el botón "Buscar". La función de este
evento es buscar en la hoja de cálculo (Hoja1) los registros que coincidan con el texto ingresado en
TextBox1busqueda. Luego, agrega los registros coincidentes al control Lista en el formulario. Los
registros se buscan comparando el título (columna 3) en mayúsculas.

El evento botoneditar_Clic se activa cuando se hace clic en el botón "Editar". Si no se ha


seleccionado ningún dato en el control Lista, muestra un mensaje de advertencia. De lo contrario,
ajusta la altura del formulario (Mí formulario) y deshabilita el botón "Agregar".

El evento botonbuscar_Click se activa cuando se hace clic en el botón "Buscar". La función de este
evento es buscar en la hoja de cálculo (Hoja1) los registros que coincidan con el texto ingresado en
TextBox1busqueda. Luego, agrega los registros coincidentes al control Lista en el formulario. Los
registros se buscan comparando el título (columna 3) en mayúsculas.

El evento botoneditar_Click se activa cuando se hace clic en el botón "Editar". Si no se ha


seleccionado ningún dato en el control Lista, muestra un mensaje de advertencia. De lo contrario,
ajusta la altura del formulario (Miformulario) y deshabilita el botón "Agregar".

El evento botoneliminar_Click se activa cuando se hace clic en el botón "Eliminar". Primero, se


obtiene el valor ingresado en Txt_codigo y se guarda en la variable valor_buscado. Luego, se
verifica si se ha seleccionado algún dato en el control Lista. Si no se ha seleccionado ningún dato,
muestra un mensaje de advertencia. Si se ha seleccionado un dato, solicita una clave mediante el
cuadro de diálogo de entrada de la aplicación. Si la clave ingresada es igual a "70909354",
encuentra la fila correspondiente al valor_buscado en la columna B de la hoja "BD
Pseudocodigo

Procedimiento botonbuscar_Click()
numerodedatos = Obtener el número de filas en la columna B de la Hoja1

Limpiar Lista
Limpiar el origen de datos de la Lista

Para fila = 4 Hasta numerodedatos


titulo = Obtener el valor de la celda en la fila y columna 3 de la
Hoja activa

Si título en mayúsculas contiene TextBox1busqueda en mayúsculas


Agregar elemento a Lista
Asignar valor a Lista en la fila y columna 0: Obtener el valor
de la celda en la fila y columna 2 de la Hoja activa
Asignar valor a Lista en la fila y columna 1: Obtener el valor
de la celda en la fila y columna 3 de la Hoja activa
Asignar valor a Lista en la fila y columna 2: Obtener el valor
de la celda en la fila y columna 4 de la Hoja activa
Asignar valor a Lista en la fila y columna 3: Obtener el valor
de la celda en la fila y columna 5 de la Hoja activa
Asignar valor a Lista en la fila y columna 4: Obtener el valor
de la celda en la fila y columna 6 de la Hoja activa
Fin Si
Siguiente

Fin Procedimiento

Procedimiento botoneditar_Click()
Si no hay ningún elemento seleccionado en Lista
Mostrar mensaje "Seleccione un dato"
Sino
Cambiar altura de Miformulario a 395
Deshabilitar el botón botonagregar
Fin Si
Fin Procedimiento

Procedimiento botoneliminar_Click()
valor_buscado = Obtener el valor de Txt_codigo
datos = Concatenar Txt_titulo y Txt_autor

Si no hay ningún elemento seleccionado en Lista


Mostrar mensaje "Seleccione un dato"
Sino
respuesta = Solicitar entrada al usuario con el mensaje "¿Desea
eliminar el registro:" seguido de datos y el título "Ingrese clave"

Si respuesta es igual a "70909354"


fila = Encontrar fila en la columna B de la Hoja "BD" que
contenga el valor_buscado
linea = Obtener el número de fila de la variable fila
Eliminar toda la fila en la columna B y fila linea
Fin Si
Fin Si
Fin Procedimiento

Procedimiento botonlimpiar_Click()
Cambiar altura de Miformulario a 250
Limpiar el valor de Txt_titulo
Limpiar el valor de Txt_autor
Limpiar el valor de Txt_editar
Limpiar el valor de Txt_año
Fin Procedimiento

Procedimiento botonmodificar_Click()
fila = Encontrar fila en la columna B de la Hoja "BD" que contenga el
valor de Txt_codigo
linea = Obtener el número de fila de la variable fila
Asignar el valor de Txt_titulo a la celda en la columna C y fila linea
Asignar el valor de Txt_autor a la celda en la columna D y fila linea
Asignar el valor de Txt_editar a la celda en la columna E y fila linea
Asignar el valor de Txt_año a la celda en la columna F y fila linea
Fin Procedimiento

You might also like