Cómo hacer una Base de Datos en Excel con Macros VBA - Parte 03 Botón Imprimir - Preguntas y Respuestas
Hola estimados seguidores de la página Excel Cuántico, continuamos desarrollando nuestro proyecto "BASE DE DATOS EN EXCEL", en la primera parte vimos como codificar los botones: "Buscar, Guardar, Modificar y Eliminar", si todavía no lo revisaste presiona aquí. En la segunda parte vimos la programación de los Botones " Siguiente, Anterior, Inicio y Final", si todavía no lo revisaste presiona aquí.
En esta oportunidad vamos a responder las consultas que nos hicieron nuestros suscriptores de canal.
Iniciamos respondiendo a una de las consultas más realizadas, que es acerca del botón buscar, muchos de nuestros suscriptores tuvieron problemas con la búsqueda de información de la base de datos, esto es porque a un inicio realizamos la búsqueda utilizando la función "BUSCARV" en VBA, pero en esta ocasión lo vamos a reemplazar por un recorrido "FOR NEXT" como mostramos a continuación.
--------------------------------------------------------------------------------------------------------------------------
Private Sub CmdBuscar_Click()
'On Error Resume Next
'
'Me.TxtDni.Text = Application.WorksheetFunction.VLookup(Me.TxtCodigo.Text, Hoja1.Range("A:F"), 2, 0)
'Me.TxtApellidos.Text = Application.WorksheetFunction.VLookup(Me.TxtCodigo.Text, Hoja1.Range("A:F"), 3, 0)
'Me.TxtNombres.Text = Application.WorksheetFunction.VLookup(Me.TxtCodigo.Text, Hoja1.Range("A:F"), 4, 0)
'Me.CmbGrado.Text = Application.WorksheetFunction.VLookup(Me.TxtCodigo.Text, Hoja1.Range("A:F"), 5, 0)
'Me.CmbSeccion.Text = Application.WorksheetFunction.VLookup(Me.TxtCodigo.Text, Hoja1.Range("A:F"), 6, 0)
'
'Me.TxtCodigo.Enabled = False
Dim X As Long, uFila As Long
uFila = nReg(Hoja1, 4, 1) - 1
For X = 4 To uFila
If Hoja1.Cells(X, 1) = Me.TxtCodigo.Text Then
Me.TxtDni.Text = Hoja1.Cells(X, 2)
Me.TxtApellidos.Text = Hoja1.Cells(X, 3)
Me.TxtNombres.Text = Hoja1.Cells(X, 4)
Me.CmbGrado.Text = Hoja1.Cells(X, 5)
Me.CmbSeccion.Text = Hoja1.Cells(X, 6)
End If
Next X
End Sub
------------------------------------------------------------------------------------------------------------------------
Como vemos pusimos la anterior codificación en modo de comentario para poder realizar la nueva búsqueda con el recorrido "FOR NEXT". Ahora responderemos a la siguiente consulta: "Como hacer para que no borre los ceros delante del DNI", para ello lo que haremos es darle formato a la celda antes de guardar la información.
------------------------------------------------------------------------------------------------------------------------
With Hoja1.Cells(uFila, 2)
.NumberFormat = "@"
End With
Hoja1.Cells(uFila, 2) = Me.TxtDni.Text
-----------------------------------------------------------------------------------------------------------------------
Con la codificación "NumberFormat" elegimos el formato de la celda, en este caso lo pusimos como formato de texto para que no elimine los ceros delante del DNI. Debemos hacer lo mismo en el botón "MODIFICAR".
Otra de las consultas es la siguiente "Como hacer para que no me permita agregar un alumno duplicado", para ello tenemos que hacer un recorrido en nuestra base de datos y validar si el alumno que queremos agregar no se encuentre ya registrado. La codificación que mostraremos a continuación la deben agregar en el botón "GUARDAR".
------------------------------------------------------------------------------------------------------------------------
For X = 4 To uFila - 1
If Hoja1.Cells(X, 2) = Me.TxtDni.Text Then
MsgBox ("El número de DNI ya fue registrado"), vbExclamation, "Excel Cuantico"
Exit Sub
End If
Next X
-----------------------------------------------------------------------------------------------------------------------
Si hasta el momento tienes dudas de como agregar la codificación que vamos mostrando no te preocupes al final del presente articulo vas a poder encontrar el video tutorial.
Otra consulta que nos hicieron fue "Que podamos imprimir el formulario", para ello tuvimos que agregar un botón y en dicho botón vamos a poner la siguiente codificación
----------------------------------------------------------------------------------------------------------------------
Private Sub BtnImprimir_Click()
On Error Resume Next
Me.CmdBuscar.Visible = False
Me.CmdGuardar.Visible = False
UserForm1.PrintForm
Me.CmdBuscar.Visible = True
Me.CmdGuardar.Visible = True
End Sub
------------------------------------------------------------------------------------------------------------------------
Con esto llegamos al final del presente artículo, espero que estemos aportando un granito en tu aprendizaje, bendiciones.
VER VÍDEO TUTORIAL
Aquí puedes ver el vídeo tutorial de "Como hacer una base de datos - Parte 03 Botón Imprimir - Preguntas y Respuestas". Si deseas encontrar más vídeos tutoriales presiona aquí.
DESCARGAR MATERIAL DE TRABAJO
Para descargar el material de trabajo PRESIONA AQUÍ o puedes encontrar en nuestra pestaña DESCARGAS
Si te gusto el presente articulo no te olvide de compartir en tus redes sociales, suscribirte al blog para que te llegue las novedades y suscribirte a nuestro canal de YouTube es completamente "GRATIS" SUSCRIBETE.
0 comentarios:
Publicar un comentario