Cómo crear una base de datos en Access con Visual Basic

Anuncio
Cómo crear una base de datos en Access con Visual Basic
Introducción
La combinación de Microsoft Access y Microsoft Visual Basic nos proporciona una excelente herramienta
para la creación de bases de datos (Access) y su acceso (Visual Basic) que nos permite administrar nuestras
colecciones de audio, libros, video, etc. este ejercicio nos permitirá concebir y construir bases de datos que se
amolden a nuestras necesidades particulares, asumiendo que tienes conocimientos más que básicos de Visual
Basic, sin más, manos a la obra.
Inicio de Visual Basic
a) Haz clic en el botón Inicio, señala Todos los programas.
b) Haz clic en Microsoft Visual Studio 6.0, Microsoft Visual Basic 6.0.
Inicio del Proyecto
a) Crea una carpeta que será exclusiva para el ejercicio se llamará: “mibasededatos” para guardar todos
los componentes del proyecto.
b) Por el momento no haremos nada con el formulario de inicio.
Creación de la base de datos
a) Haz clic en el botón Complementos de la barra de herramientas.
b) Haz clic en Administrador visual de datos…
1 de 85
Cómo crear una base de datos en Access con Visual Basic
c) Y se abrirá el Administrador visual de datos (VisData (Visual Data Manager)).
d) Haz clic en Archivo, Nuevo…, Microsoft Access, MDB de la versión 7.0…
2 de 85
Cómo crear una base de datos en Access con Visual Basic
e) En la caja Seleccione la base de datos de Microsoft Access que desea crear, en Guardar en, busca
y selecciona la misma carpeta –creada anteriormente- en donde se guardará el proyecto, en Nombre:
escribe un nombre que identifique la base de datos (usualmente el mismo nombre de la carpeta) y haz
clic en Guardar.
3 de 85
Cómo crear una base de datos en Access con Visual Basic
f) Ahora aparece nuevamente el Administrador visual de datos mostrando en la barra de título la ruta
de acceso de nuestra base de datos y lista para empezar a trabajar.
4 de 85
Cómo crear una base de datos en Access con Visual Basic
Creación de las tablas de la base de datos
a) Haz clic con el botón derecho del ratón dentro de la Ventana de base de datos y haz clic en Nueva
tabla.
5 de 85
Cómo crear una base de datos en Access con Visual Basic
b) En la caja Estructura de tabla, Nombre de la tabla: escribe el nombre de la tabla, para el ejercicio
la tabla se llamará Alumnos, y haz clic en Agregar campo.
6 de 85
Cómo crear una base de datos en Access con Visual Basic
c) En la caja Agregar campo, Nombre: escribe el nombre del primer campo de la tabla que estamos
creando, para el ejercicio agregaremos cuatro campos, a saber: matricula, nombre, carrera y turno.
d) En Tipo: selecciona el tipo de datos que contendrá el campo, en nuestro caso serán:
- campo: matricula, tipo de datos: long, tamaño: (automático)
- campo: nombre, tipo de datos: texto, tamaño: 50
- campo: carrera, tipo de datos: texto, tamaño: 50
- campo: turno, tipo de datos: texto, tamaño: 20
e) En Tamaño: selecciona la cantidad de caracteres (incluyendo espacios) que tendrá el campo (ver
arriba) y haz clic en Aceptar.
f) Para agregar los otros campos de la tabla, haz clic en Agregar campo y repite los pasos desde el
punto “c)” (Nombre, Tipo y Tamaño) para cada campo que tendrá la tabla.
7 de 85
Cómo crear una base de datos en Access con Visual Basic
g) Cuando hayas agregado los campos de la tabla haz clic en el botón Generar la tabla.
8 de 85
Cómo crear una base de datos en Access con Visual Basic
h) Y la tabla la podrás ver en el Administrador visual de datos (VisData).
i) Repite los pasos –desde el punto “a)” para cada tabla que tendrá la base de datos.
9 de 85
Cómo crear una base de datos en Access con Visual Basic
Introduciendo la información en las tablas
a) Haz clic con el botón derecho del ratón en la tabla recién creada de la base de datos y haz clic en
Abrir.
10 de 85
Cómo crear una base de datos en Access con Visual Basic
b) Y se mostrará la caja Dynaset con el nombre de la tabla, en nuestro caso: Alumnos. Haz clic en
Agregar para empezar a introducir la información en los campos del primer registro.
c) Cuando termines de introducir la información en la última caja de texto, haz clic en Actualizar.
Repite los pasos para cada registro de la Tabla.
d) Repite los pasos para introducir la información para cada tabla de la base de datos.
11 de 85
Cómo crear una base de datos en Access con Visual Basic
Preparando los formularios
En un formulario de Visual Basic crea las etiquetas necesarias que correspondan –modificando su propiedad
Caption- con los nombres de los campos de la tabla Alumnos, a saber, Matrícula, Nombre, Carrera y Turno.
Crea las cajas de texto –dejando en blanco su propiedad Text- necesarias para mostrar el contenido de los
campos y un control Data, repite los pasos para cada tabla que tengas en tu base de datos.
Haz clic en el menú Proyecto, Componentes, selecciona el componente Microsoft FlexGrid Control 6.0 y
haz clic en Aceptar. Ahora el objeto se halla en la Caja de herramientas, dibújalo en el formulario para que
se vea más o menos como se ve abajo.
12 de 85
Cómo crear una base de datos en Access con Visual Basic
Creando la conexión con la base de datos y la tabla
1. Conectando el control Data
a) Selecciona el control Data y modifica sus propiedades como sigue:
b) DatabaseName: localiza la carpeta del proyecto y selecciona la base de datos (mibasededatos) en
donde se halla la tabla.
c) RecordSource: selecciona el nombre de la tabla (Alumnos) cuyos campos se mostrarán en el
formulario.
2. Conectando las cajas de texto
a) Selecciona una de las cajas de texto y modifica sus propiedades como sigue:
b) DataSource: selecciona Data1.
c) DataField: selecciona el nombre del campo de la tabla –que corresponda con la etiqueta correctaque se mostrará en la caja de texto.
d) Repite los pasos con cada caja de texto del formulario y ejecuta el programa con F5.
e) En el formulario que conectaste a la base de datos, al hacer clic en el botón de avance del control
Data se mostrarán los registros de la tabla.
f) Si no se pueden ver los registros de la tabla, significa que no se conectaron correctamente el control
Data y las cajas de texto, simplemente revisa las conexiones una por una.
13 de 85
Cómo crear una base de datos en Access con Visual Basic
3. Conectando el MSFlexGrid.
a) Selecciona el objeto MSFlexGrid, en su propiedad DataSource selecciona Data1, modifica su propiedad
Cols a 5, cambia su propiedad Rows a 5, opcionalmente puedes modificar sus propiedades de BackColor de
la manera que más te agrade.
4. Este es el código del formulario:
Private Sub Form_Activate()
With MSFlexGrid1
For X = 1 To .Rows - 1
.Row = X
For J = 1 To .Cols - 1
.Col = J
.CellBackColor = IIf((X Mod 2) = 1, Val(&HC0FFFF), Val(&HC0FFC0))
.CellFontBold = True
.CellForeColor = &HFF0000
Next J
Next X
End With
End Sub
Private Sub Form_Load()
MSFlexGrid1.ColWidth(0) = 300
MSFlexGrid1.ColWidth(1) = 800
MSFlexGrid1.ColWidth(2) = 2500
MSFlexGrid1.ColWidth(3) = 2000
MSFlexGrid1.ColWidth(4) = 1100
End Sub
Private Sub Form_Unload(Cancel As Integer)
Cancel = 1
MsgBox "Haz Clic en Movimientos", vbInformation, "¡Aviso Importante!"
End Sub
14 de 85
Cómo crear una base de datos en Access con Visual Basic
Creando un Menú
En el formulario vamos a crear un menú llamado Movimientos con las siguientes opciones:
15 de 85
Cómo crear una base de datos en Access con Visual Basic
a) Haz clic con el botón derecho del ratón sobre el formulario y haz clic en el Editor de menús…
b) Y aparece la caja Editor de menús.
16 de 85
Cómo crear una base de datos en Access con Visual Basic
c) En Caption introduce el nombre (que se mostrará en el formulario) del menú.
d) En Name introduce el nombre que utilizará Visual Basic.
e) Haz clic en el botón Siguiente para crear otro menú.
f) Haz clic en el botón con la flecha hacia la derecha y aparecerán cuatro puntos, lo cual indica que el
siguiente renglón será una opción del menú.
g) En Shortcut selecciona la combinación de teclas que se podrán usar para activar la opción de menú
correspondiente.
h) Repite los pasos para crear cada opción del menú.
Programando las opciones del menú
Ahora codificaremos en Visual Basic las opciones del menú Movimientos para eso abre el menú y haz clic
en cada una de las opciones del menú, el código para las opciones son:
a) Opción Nuevo, el cual servirá para crear un nuevo registro en la tabla, el código es el siguiente:
Private Sub nuevo_Click ()
Data1.Recordset.AddNew
End Sub
P.D. Esta opción debe presionarse antes de dar de alta un nuevo registro en la base de datos.
b) Opción Guardar, el cual servirá para guardar un nuevo registro en la tabla, el código es el siguiente:
Private Sub guardar_Click()
Data1.UpdateRecord
Data1.Refresh
MsgBox "El Registro ha sido Guardado en la Base de Datos", vbExclamation, "Aviso Importante"
End Sub
P.D. Esta opción debe presionarse una vez que se haya completado la información del registro.
c) Opción Buscar, el cual servirá para buscar un registro en la tabla, el código es el siguiente:
Private Sub buscar_Click()
Dim m As Long
m = Val(InputBox("Introduce la Matrícula que Buscas"))
Data1.Recordset.FindFirst "matricula=" & m
If Data1.Recordset.NoMatch Then
MsgBox "La Matrícula Número: " & m & " No está en la Base de Datos", vbExclamation, "Búsquedas de
Matrícula"
End If
End Sub
17 de 85
Cómo crear una base de datos en Access con Visual Basic
Nota: aquí declaramos una variable (m) que representará el número del registro (matricula) que estemos
buscando. Es de vital importancia de que te asegures de que en la línea subrayada la palabra “Matrícula”
esté escrita exactamente como llamaste el campo “matricula” al crear la tabla.
d) Opción Eliminar, el cual servirá para eliminar un registro de la tabla, el código es el siguiente:
Private Sub Eliminar_Click()
If MsgBox("¿Quieres Eliminar la Matrícula Número: " & Text1 & "?", 16 + 4) = 6 Then
Data1.Recordset.Delete
Data1.Refresh
Text1.SetFocus
MsgBox "Se Eliminó la Matrícula", vbCritical, "Aviso Importante"
Else
MsgBox "No se Eliminó la Matrícula Número: " & Text1, vbExclamation, "Aviso Importante"
End If
End Sub
Ahora corre tu programa con la tecla F5 dirígete al formulario y ahora podrás agregar, guardar, buscar y
eliminar registros de la tabla Alumnos de la base de datos de Access mediante Visual Basic.
18 de 85
Cómo crear una base de datos en Access con Visual Basic
Creando los reportes con Visual Basic
Para crear reportes en Visual Basic vamos a crear primero el Data Environment (Entorno de Datos) el cual
es una herramienta muy sencilla para crear reportes tal como Crystal Reports o Access.
Creando el Data Environment
a) Haz clic en el botón Proyecto de la barra de herramientas.
b) Haz clic en Agregar Data Environment
c) Y se abrirá el Data Environment mostrando el nombre del proyecto en su barra de título.
19 de 85
Cómo crear una base de datos en Access con Visual Basic
Nota: En caso de que no se halle disponible la opción Agregar Data Environment en el menú Proyecto,
hay que activarla desde Proyecto, Componentes, Diseñadores y hacer clic en Data Environment y otro
clic en Aceptar.
20 de 85
Cómo crear una base de datos en Access con Visual Basic
d) En la ventana aparece un pequeño icono de un reporte al cual puedes cambiarle el nombre fácilmente
seleccionándolo y modificando su propiedad (Name) por otro como Reportes, etc.
e) Más abajo se puede ver otro objeto, un cilindro -el cual representa a la base de datos- con una clavija
eléctrica llamado Connection1 al cual también puedes cambiarle el nombre modificando su
propiedad (Name) por otro como Alumnos, Maestros, etc.
21 de 85
Cómo crear una base de datos en Access con Visual Basic
f) Ahora haz clic con el botón derecho del ratón sobre la Connection1 (ahora llamada Alumnos) y haz
clic en Propiedades…
g) Y aparecerá la caja Propiedades de vínculo de datos, haz clic en la opción Conexión.
22 de 85
Cómo crear una base de datos en Access con Visual Basic
h) Haz clic en: Usar la cadena de conexión y haz clic en Generar…
23 de 85
Cómo crear una base de datos en Access con Visual Basic
i) Y aparecerá la caja Seleccionar origen de datos, haz clic en la opción Origen de datos de equipo.
j) Selecciona el tipo de base de datos en donde se creó la base de datos, en nuestro caso MS Access
Database y haz doble clic ahí.
24 de 85
Cómo crear una base de datos en Access con Visual Basic
k) Y aparecerá la caja Conexión, haz clic en el botón Base de datos…
l) Y aparecerá la caja Seleccionar base de datos, localiza la carpeta o unidad de disco en donde se halla
tu base de datos, selecciónala y haz clic en Aceptar.
m) Enseguida se vuelve a mostrar la caja Conexión, haz clic nuevamente en Aceptar.
25 de 85
Cómo crear una base de datos en Access con Visual Basic
n) Y se mostrará la caja Propiedades de vínculo de datos, mostrando en la caja de texto Cadena de
conexión bajo la opción Usar la cadena de conexión la ruta de la base de datos que hemos
conectado, para finalizar la conexión haz clic en Aceptar.
o) Y volveremos al Entorno de Datos.
Ya creamos la conexión de los reportes con la base de datos, ahora vamos a crear un comando para el
reporte.
26 de 85
Cómo crear una base de datos en Access con Visual Basic
Creando un comando
a) Haz clic con el botón derecho del ratón sobre la conexión (Alumnos) que creamos previamente y haz
clic en Agregar comando.
27 de 85
Cómo crear una base de datos en Access con Visual Basic
b) Y enseguida aparecerá un objeto llamado Command1, al cual le puedes cambiar su nombre
modificando su propiedad (Name).
c) Para motivos de identificación llamaremos el Command1 Repalumnos, ya que nos será útil para
identificar el reporte de alumnos.
28 de 85
Cómo crear una base de datos en Access con Visual Basic
Creando las propiedades del reporte
a) Haz clic con el botón derecho del ratón sobre el comando –ahora llamado Repalumnos- y haz clic en
Propiedades… y aparecerá la caja Propiedades de Reporte, ahí podemos ver el Nombre de
comando (Command1) el cual es Repalumnos y el nombre de la Conexión que es Alumnos.
29 de 85
Cómo crear una base de datos en Access con Visual Basic
b) En la sección Origen de datos, Objeto de la base de datos, haz clic en la flechita que se halla en la
caja de combo y selecciona la opción Tabla.
c) Haz clic en la flecha de la caja de combo Nombre de objeto y selecciona el nombre de la tabla
(alumnos) que nos servirá de origen de datos para crear el reporte.
d) Ahora sólo haz clic en Aceptar.
30 de 85
Cómo crear una base de datos en Access con Visual Basic
e) Y se mostrará un pequeño cuadro con un signo de más en su interior, al lado izquierdo del comando
Repalumnos, haz clic ahí y podrás ver los campos de la tabla Alumnos que seleccionaste
previamente, todo indica que nuestra conexión se realizó exitosamente.
Ya puedes cerrar el Entorno de Datos (Data Environment) para crear ahora la estructura del reporte.
31 de 85
Cómo crear una base de datos en Access con Visual Basic
Creando la estructura del reporte
a) En Visual Basic haz clic en el botón Proyecto de la barra de herramientas y haz clic en Agregar
Data Report y se mostrará la caja DataReport1, la caja de herramientas y la caja de propiedades
correspondientes para trabajar en el DataReport.
Nota: En caso de que no se halle disponible la opción Agregar Data Report en el menú Proyecto, hay que
activarla desde Proyecto, Componentes, Diseñadores y hacer clic en Data Report y otro clic en Aceptar.
32 de 85
Cómo crear una base de datos en Access con Visual Basic
a) Hay varias maneras de elaborar la estructura del reporte, vamos a emplear una muy sencilla, haz clic
en la herramienta RptLabel y dibuja una etiqueta en Encabezado de informe (Sección4) y modifica
su propiedad Caption con el título que tendrá el reporte.
Nota: puedes ajustar la altura de las diferentes secciones del Data Report mediante colocar el
apuntador del ratón en el limite inferior de cada sección, presionar el botón izquierdo del ratón y
sencillamente moverlo hacia arriba o hacia abajo según sea el caso.
b) Ahora haz clic en RptLabel y coloca etiquetas con los títulos de los encabezados de la tabla en
Encabezado de página (Sección2) modificando sus propiedades Caption, Font, ForeColor, etc. a tu
gusto.
c) Ahora haz clic en RptTextBox y coloca cajas de texto en Detalle (Sección1).
d) Al terminar de colocar las cajas de texto que muestran el texto: No enlazado, haz clic en cualquier
parte vacía del DataReport y haz clic en la cajita gris situada bajo el icono de la barra de titulo del
Data Report, para mostrar las propiedades del DataReport.
33 de 85
Cómo crear una base de datos en Access con Visual Basic
e) Haz clic en la propiedad DataSource y selecciona el DataEnvironment1 que previamente llamamos
reportes, y en la propiedad DataMember selecciona el Command1 que llamamos Repalumnos.
Nota: Podemos crear varios reportes –si hay varias tablas- en el mismo Data Environment.
f) Ahora selecciona la primera caja de texto y haz clic en la cajita gris situada bajo el icono de la barra
de titulo del Data Report, para mostrar las propiedades de la caja de texto (RptTextBox), y modifica
sus propiedades como sigue: DataMember: el nombre del reporte (Repalumnos) y en DataField:
selecciona el campo que corresponda de la tabla y repite los pasos para cada caja de texto para que se
vea más o menos así.
34 de 85
Cómo crear una base de datos en Access con Visual Basic
Creando el menú de Reportes
Vamos a volver al formulario en donde creamos el menú
a) Haz clic con el botón derecho del ratón en el formulario y haz clic en Editor de menús…
b) Crea el menú Reportes con la opción Alumnos.
35 de 85
Cómo crear una base de datos en Access con Visual Basic
c) Para que se vea así
36 de 85
Cómo crear una base de datos en Access con Visual Basic
Conectando el menú con el reporte
Ahora vamos a conectar la opción del menú Reportes con el reporte que creamos previamente
a) Haz clic en Reportes, Alumnos y escribe el siguiente código:
Private Sub reportedealumnos_Click()
DataReport1.Show
End Sub
b) Ejecuta el programa y haz clic en la opción para ver el reporte y se mostrará el reporte que creaste.
Nota: En caso de ser necesario puedes estirar las cajas de texto para que se puedan ver los datos, o modificar
la propiedad RightMargin del Data Report según tus necesidades particulares.
Puedes crear una base de datos con varias tablas, diferentes formularios y diferentes reportes según prefieras,
sinceramente espero que haya sido de tu interés el ejercicio y sirva para que te adentres en el mundo de la
programación y las bases de datos.
37 de 85
Cómo crear una base de datos en Access con Visual Basic
En esta segunda parte del ejercicio, vamos a controlar el acceso al programa, de manera que solamente
accesen el sistema, usuarios que previamente se hayan registrado como tales, también se creará la opción
para que los interesados se auto registren y puedan hacer uso del programa, por lo que vamos a crear:
a) Una pantalla de Inicio, que se verá inmediatamente antes de iniciar el programa.
b) Una pantalla de Bienvenida, con opciones para entrar al programa o registrarnos si es que no somos
usuarios registrados para accesar el programa.
c) Una pantalla de Entrada, para acceder al programa como usuario registrado.
d) Una pantalla de Registro, en donde se registrarán los usuarios que quieran entrar el programa.
Creando una pantalla de inicio
a) Haz clic en Proyecto, Agregar formulario.
b) En la caja de diálogo Agregar formulario, opción Nuevo, selecciona el icono Pantalla de inicio y
haz clic en Abrir.
Para el propósito del ejercicio sólo conserva dos etiquetas que nos serán de utilidad así como la gráfica,
selecciona el resto de las etiquetas y presiona el botón Suprimir para eliminarlas. Modifica las etiquetas,
cambia la gráfica por la que prefieras, y agrega un reloj a la pantalla de inicio para que se vea más o menos
como se ve abajo.
Para que esta pantalla se vea inmediatamente antes que inicie el programa hay que hacer lo siguiente:
a) Selecciona el reloj y cambia su propiedad Interval a 100.
38 de 85
Cómo crear una base de datos en Access con Visual Basic
b) Haz doble clic en el reloj y escribe el siguiente código:
Private Sub Timer1_Timer()
Static J As Integer
J=J+1
If J = 20 Then
frmSplash.Hide
Bienvenida.Show
Timer1.Enabled = False
End If
End Sub
Aquí sencillamente declaramos una variable que se incrementará de uno en uno y al llegar a 20 se
ocultará la pantalla de inicio y mostrará otro formulario, en nuestro caso el formulario de Bienvenida,
y deshabilitará el reloj. Para que el programa inicie con el formulario que acabamos de crear:
c) Haz clic en Proyecto, Propiedades de proyecto… y se abrirá la caja de diálogo, Propiedades del
proyecto.
d) En la opción General, Objeto inicial, selecciona el formulario frmSplash y haz clic en Aceptar.
Creando una pantalla de bienvenida
Crea un formulario, con una etiqueta y tres botones, para que se vea más o menos como se ve abajo.
a) El código del botón Registrarse es:
Private Sub Command1_Click()
Bienvenida.Hide
Registro.Show
End Sub
Cuya función es la de ocultar el formulario de Bienvenida y mostrar el formulario de Registro.
39 de 85
Cómo crear una base de datos en Access con Visual Basic
b) El código del botón Entrar es:
Private Sub Command2_Click()
Bienvenida.Hide
Entrada.Show
End Sub
Cuya función es la de ocultar el formulario de Bienvenida y mostrar el formulario de Entrada.
c) El código del botón Cancelar es:
Private Sub Command3_Click()
Unload Me
End
End Sub
Cuya función es la de cerrar el programa.
Creando una pantalla de entrada
Crea un formulario, con dos etiquetas, dos cajas de texto y dos botones, para que se vea más o menos como
se ve abajo.
40 de 85
Cómo crear una base de datos en Access con Visual Basic
a) El código del botón Entrar al Programa es:
Private Sub Command1_Click()
Dim usuario As String
Dim contrasena As String
Dim mensaje As String
Registro.Data1.Refresh
usuario = Text1
contrasena = Text2
Do Until Registro.Data1.Recordset.EOF
If Registro.Data1.Recordset.Fields("usuario").Value = usuario And
Registro.Data1.Recordset.Fields("contrasena").Value = contrasena Then
MsgBox "Hola " & usuario & ", ¿Cómo has estado?", vbOKOnly, "Bienvenido al Programa"
Entrada.Hide
Alumnos.Show
Exit Sub
Else
Registro.Data1.Recordset.MoveNext
End If
Loop
mensaje = MsgBox("No te Conozco " & usuario & ", Intenta de Nuevo", vbOKOnly, "Atención,
Usuario No Autorizado!!!")
If (mensaje = 1) Then
Entrada.Show
Text1 = ""
Text2 = ""
Else
End
End If
End Sub
Cuya función es asegurarse de que el nombre de usuario y contraseña introducidos se hallen en la
tabla de usuarios, si lo halla le permitirá la entrada al programa, si no lo encuentra, invitará al usuario
a intentarlo de nuevo o salir del programa.
41 de 85
Cómo crear una base de datos en Access con Visual Basic
b) El código del botón Salir del programa es:
Private Sub Command2_Click()
End
End Sub
Cuya función es la de cerrar el programa.
c) Escribe el siguiente código en el evento Activate del formulario
Private Sub Form_Activate()
Text1.SetFocus
End Sub
Cuya función es la de colocar el cursor en la caja de texto 1 al cargar el formulario
d) Escribe el siguiente código en el evento KeyPress de la caja de texto 1
Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
Text2.SetFocus
End If
End Sub
Cuya función es la de avanzar de la caja de texto 1 a la caja de texto 2 al presionar la tecla Enter.
Creando una pantalla de registro
Crea un formulario, con dos etiquetas, dos cajas de texto, dos botones y un control Data, cuya propiedad
Visible debe ser cambiada a False, para que se vea más o menos como se ve abajo.
42 de 85
Cómo crear una base de datos en Access con Visual Basic
a) El código del botón Guardar Nuevo Registro es:
Private Sub Command4_Click()
Data1.UpdateRecord
Data1.Refresh
MsgBox "El Usuario ha sido Guardado en la Base de Datos", vbExclamation, "Aviso Importante"
Registro.Hide
Alumnos.Show
End Sub
Cuya función es la de guardar en la tabla de usuarios al nuevo usuario.
b) El código del botón Salir del programa es:
Private Sub Command2_Click()
End
End Sub
Cuya función es la de cerrar el programa.
c) Escribe el siguiente código en el evento Activate del formulario
Private Sub Form_Activate()
Data1.Recordset.AddNew
End Sub
Cuya función es la de preparar el agregar al usuario nuevo.
d) Escribe el siguiente código en el evento KeyPress de la caja de texto 1
Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
Text2.SetFocus
End If
End Sub
Cuya función es la de avanzar de la caja de texto 1 a la caja de texto 2 al presionar la tecla Enter.
e) Ahora hay que crear dentro de la misma base de datos, una tabla llamada usuarios para conservar los
registros de los usuarios que se registren como usuarios del sistema, para este fin hay que seguir las
instrucciones del capítulo: Creación de las tablas de la base de datos, detallada páginas arriba.
43 de 85
Cómo crear una base de datos en Access con Visual Basic
La tabla debe llamarse “usuarios” y sus campos deben ser definidos como tipo texto y tamaño 50, tal
como se ve en la caja Estructura de la tabla mostrada abajo.
44 de 85
Cómo crear una base de datos en Access con Visual Basic
De tal manera que en el Administrador Visual de datos (VisData) podamos ver las tablas que
forman nuestra base de datos.
En la tabla recién creada y siguiendo el procedimiento páginas mostrado arriba, registra un único
usuario, preferentemente tú nombre y como contraseña nuevamente tú nombre, esto por motivos de
prueba.
45 de 85
Cómo crear una base de datos en Access con Visual Basic
f) Ahora volvamos al formulario llamado Registro, este contiene un control Data que hay que conectar
- A la base de datos, usando su propiedad Databasename, y
- A la tabla usuarios, usando su propiedad RecordSource.
No hay que olvidar cambiar su propiedad Visible a False.
Si todo ha resultado bien, al iniciar nuestro programa, este iniciará con la pantalla de Inicio,
enseguida se mostrará la pantalla de Bienvenida, en donde tenemos dos opciones: al oprimir el botón
Entrar, debe mostrarse la pantalla de Entrada y si se presiona el botón Registrarse, debe mostrarse
la pantalla de Registro. La cual reconocerá al usuario registrado y no permitirá la entrada al sistema
de personas no registradas. Como tenemos un usuario registrado podremos probar su funcionalidad.
Gracias por todos los alentadores mensajes electrónicos recibidos de tanta gente, como siempre estoy
a la orden para sugerencias y recomendaciones.
46 de 85
Cómo crear una base de datos en Access con Visual Basic
En esta tercera parte del ejercicio, vamos a realizar algunas búsquedas y consultas, así como ordenar los
datos en forma ascendente y descendente, también moveremos registros del MSFlexGrid a otros objetos, de
tal manera que vamos a crear:
a)
b)
c)
d)
e)
Una pantalla para realizar búsquedas por: Matrícula, Carrera y Turno.
Una pantalla para efectuar búsquedas de Matrícula usando una caja de combo.
Una Pantalla para ordenar todos los registros en forma ascendente y descendente.
Una pantalla para mover datos del MSFlexGrid a cajas de texto.
Una pantalla para trasferir datos del MSFlexGrid a cajas de lista.
Para el propósito del ejercicio vamos a modificar la pantalla de opciones para que tenga una apariencia
semejante a como se ve abajo.
En este formulario, modifica el menú para que contenga opciones para las pantallas de búsqueda antes
mencionadas, por cuestiones de fácil identificación las llamé como se ven en la pantalla. El formulario
contiene al medio un objeto Picture conteniendo una ilustración.
47 de 85
Cómo crear una base de datos en Access con Visual Basic
En la parte inferior hay un objeto StatusBar, el cual fue activado mediante hacer clic en Proyecto,
Componentes, en la caja de diálogo Componentes, Controles, selecciona la opción Microsoft Windows
Common Controls 6.0 (SP6) y haz clic en Aplicar y Aceptar para que los controles se muestren en el
Cuadro de herramientas.
En el Cuadro de herramientas haz doble clic en el objeto StatusBar para que se mueva al formulario, una
vez ahí, haz doble clic con el botón derecho del ratón en el objeto StatusBar y haz clic en Propiedades.
48 de 85
Cómo crear una base de datos en Access con Visual Basic
Para que se muestre la caja de diálogo Páginas de propiedades.
En la caja de diálogo Páginas de propiedades, opción Paneles, haz clic en el botón Insertar panel en dos
ocasiones (para tener un total de tres paneles), el objeto StatusBar muestra un panel, de manera que hay que
insertar los paneles en donde se mostrará la hora, la fecha y la activación de la tecla de Mayúsculas.
Podrás ver los paneles insertados mediante hacer clic en las flechas izquierda y derecha de la opción Index.
Los paneles deben mostrar en la opción Style: 5 sbrTime, 6 sbrDate y 1 sbrCaps respectivamente para que
se vea como la ilustración del formulario opciones mostrada arriba. Puedes experimentar con las otras
opciones a tu gusto.
49 de 85
Cómo crear una base de datos en Access con Visual Basic
Creando la pantalla de Búsquedas1
Crea un formulario, con un frame, tres botones de opción, una caja de texto, dos etiquetas, dos botones, un
MSFlexGrid y un control Data, cuya propiedad Visible debe ser cambiada a False, para que se vea más o
menos como se ve abajo.
El formulario debe tener un menú con la opción Volver a Opciones como se muestra abajo.
50 de 85
Cómo crear una base de datos en Access con Visual Basic
a) El código del formulario Búsquedas1 es:
Private Sub Form_Load()
MSFlexGrid1.ColWidth(0) = 300
MSFlexGrid1.ColWidth(1) = 800
MSFlexGrid1.ColWidth(2) = 2100
MSFlexGrid1.ColWidth(3) = 2500
MSFlexGrid1.ColWidth(4) = 1000
Label2.Visible = False
Text1.Visible = False
End Sub
Private Sub Form_Unload(Cancel As Integer)
Cancel = 1
MsgBox "Haz Clic en Archivo", vbInformation, "¡Aviso Importante!"
End Sub
b) El código del menú Volver a Opciones es:
Private Sub volveraopciones_Click()
Busquedas1.Hide
Opciones.Show
End Sub
c) El código de los botones de opción es:
Private Sub Option1_Click()
If Option1 = True Then
Label2.Visible = True
Label2.Caption = "Introduce la Matrícula que buscas"
Text1.Visible = True
Text1 = ""
Text1.SetFocus
End If
End Sub
Private Sub Option2_Click()
If Option2 = True Then
Label2.Visible = True
Label2.Caption = "Introduce la Carrera que buscas"
Text1.Visible = True
Text1 = ""
Text1.SetFocus
End If
End Sub
51 de 85
Cómo crear una base de datos en Access con Visual Basic
Private Sub Option3_Click()
If Option3 = True Then
Label2.Visible = True
Label2.Caption = "Introduce el Turno que buscas"
Text1.Visible = True
Text1 = ""
Text1.SetFocus
End If
End Sub
d) el código del botón Buscar es:
Private Sub Command1_Click()
If Option1 = True Then
Data1.RecordSource = "select * from alumnos where matricula = " & Val(Text1)
Data1.Refresh
Label1.Visible = True
If Data1.Recordset.EOF Then
MsgBox "La Matrícula: " & Val(Text1) & ", No está en la Base de Datos", vbExclamation, "¡Por Favor
Revisa el Número de la Matrícula!"
Text1 = ""
Text1.SetFocus
End If
ElseIf Option2 = True Then
Data1.RecordSource = "select * from alumnos where carrera = '" & Text1 & "'"
Data1.Refresh
Label1.Visible = True
If Data1.Recordset.EOF Then
MsgBox "La Carrera: '" & Text1 & "'" & " No está en la Base de Datos", vbExclamation, "¡Por Favor Revisa
el Nombre de la Carrera!"
Text1 = ""
Text1.SetFocus
End If
ElseIf Option3 = True Then
Data1.RecordSource = "select * from alumnos where turno = '" & Text1 & "'"
Data1.Refresh
Label1.Visible = True
52 de 85
Cómo crear una base de datos en Access con Visual Basic
If Data1.Recordset.EOF Then
MsgBox "El Turno: '" & Text1 & "'" & " No está en la Base de Datos", vbExclamation, "¡Por Favor Revisa el
Nombre del Turno!"
Text1 = ""
Text1.SetFocus
End If
End If
Label1 = "Total de Registros de la Consulta: " & (MSFlexGrid1.Rows) - 1 & ""
End Sub
e) El código del botón Ver Todos los Registros es:
Private Sub Command2_Click()
Text1 = ""
Data1.RecordSource = "alumnos"
Data1.Refresh
Label1 = "Total de Registros de la búsqueda: " & (MSFlexGrid1.Rows) - 1 & ""
End Sub
f) Control Data1
No olvides conectar el control Data a la base de datos mediante su propiedad DatabaseName, y a la tabla
alumnos mediante su propiedad RecordSource.
g) MSFlexGrid1
Del MsFlexGrid modifica su propiedad Cols a 5, DataSource a Data1, Rows a 4, SelectionMode a 1 –
flexSelectionByRow, también puedes seleccionar colores contrastantes em las propiedades BackColorSel y
ForeColorSel.
h) Las etiquetas1 y 2, deben estar vacías y con su propiedad AutoSize a True, una de ellas colócala justo
arriba de la caja de texto y la otra puede ir al pie del formulario.
Al iniciar el formulario, no deben verse las etiquetas ni la caja de texto, para lo cual limpia el contenido de la
propiedad Caption, hasta que el usuario haga un clic en el botón de opción deseado. Al introducir la
información requerida y hacer clic en el botón Buscar se mostrará el o los registros y la otra etiqueta
indicando el número de registros hallados, al presionar el botón Ver Todos los Registros se mostrarán todos
los registros de la tabla Alumnos. El Botón cerrar del formulario se deshabilita para forzar el uso del Menú.
53 de 85
Cómo crear una base de datos en Access con Visual Basic
Creando la pantalla de Búsquedas2
Crea un formulario, con una etiqueta, una caja de combo, dos botones, un MSFlexGrid y un control Data,
cuya propiedad Visible debe ser cambiada a False, para que se vea más o menos como se ve abajo.
Al igual que el ejercicio anterior, el formulario debe tener un menú con la opción Volver a Opciones.
a) El código del formulario Búsquedas2 es:
Private Sub Form_Load()
MSFlexGrid1.ColWidth(0) = 300
MSFlexGrid1.ColWidth(1) = 800
MSFlexGrid1.ColWidth(2) = 2100
MSFlexGrid1.ColWidth(3) = 2500
MSFlexGrid1.ColWidth(4) = 1000
End Sub
Private Sub Form_Unload(Cancel As Integer)
Cancel = 1
MsgBox "Haz Clic en Archivo", vbInformation, "¡Aviso Importante!"
End Sub
b) El código del menú Volver a Opciones es:
Private Sub volveraopciones_Click()
Busquedas2.Hide
Opciones.Show
End Sub
54 de 85
Cómo crear una base de datos en Access con Visual Basic
c) El código de la caja de combo es:
Private Sub Combo1_DropDown()
On Error Resume Next
Do Until Data1.Recordset.EOF
Combo1.AddItem Data1.Recordset.Fields("matricula")
Data1.Recordset.MoveNext
Loop
End Sub
d) El código del botón Buscar es:
Private Sub Command1_Click()
Data1.RecordSource = "select * from alumnos where matricula =" & Val(Combo1.Text)
Data1.Refresh
If Data1.Recordset.EOF Then
MsgBox "La Matrícula: " & Val(Combo1) & ", No está en la Base de Datos" + vbCrLf + "Haz Clic en el
botón 'Ver Todos'" + vbCrLf + "Para Seleccionar un Número de Matrícula", vbExclamation, "¡Por Favor
Selecciona un Número de Matrícula!"
End If
End Sub
e) El código del botón Ver Todos es:
Private Sub Command2_Click()
Data1.RecordSource = "alumnos"
Data1.Refresh
End Sub
f) Control Data1
No olvides conectar el control Data a la base de datos mediante su propiedad DatabaseName, y a la tabla
alumnos mediante su propiedad RecordSource.
g) MSFlexGrid1
Del MsFlexGrid modifica su propiedad Cols a 5, DataSource a Data1, Rows a 4, SelectionMode a 1 –
flexSelectionByRow, también puedes seleccionar colores contrastantes em las propiedades BackColorSel y
ForeColorSel.
h) ComboBox su propiedad Text cambiala a Matrículas.
Al iniciar el formulario, el usuario seleccionará de la caja de combo la matrícula que busca, y al presionar el
botón Buscar, la matrícula deseada se le mostrará. Al presionar el botón Ver Todos, se mostrarán todos los
registros de la tabla Alumnos. El Botón cerrar del formulario se deshabilita para forzar el uso del Menú.
55 de 85
Cómo crear una base de datos en Access con Visual Basic
Creando la pantalla de Búsquedas3
Crea un formulario, con una etiqueta, un Frame, cuatro botones de opción, dos botones, un MSFlexGrid y un
control Data, cuya propiedad Visible debe ser cambiada a False, para que se vea más o menos como se ve
abajo.
Al igual que el ejercicio anterior, el formulario debe tener un menú con la opción Volver a Opciones.
a) El código del formulario Búsquedas3 es:
Private Sub Form_Load()
MSFlexGrid1.ColWidth(0) = 300
MSFlexGrid1.ColWidth(1) = 800
MSFlexGrid1.ColWidth(2) = 2100
MSFlexGrid1.ColWidth(3) = 2500
MSFlexGrid1.ColWidth(4) = 1000
End Sub
Private Sub Form_Unload(Cancel As Integer)
Cancel = 1
MsgBox "Haz Clic en Archivo", vbInformation, "¡Aviso Importante!"
End Sub
b) El código del menú Volver a Opciones es:
Private Sub volver_Click()
Busquedas3.Hide
Opciones.Show
End Sub
56 de 85
Cómo crear una base de datos en Access con Visual Basic
c) El código del botón Ascendente es:
Private Sub Command1_Click()
If Option1 = True Then
MSFlexGrid1.Col = 1
MSFlexGrid1.Sort = flexSortNumericAscending
ElseIf Option2 = True Then
MSFlexGrid1.Col = 2
MSFlexGrid1.Sort = flexSortStringAscending
ElseIf Option3 = True Then
MSFlexGrid1.Col = 3
MSFlexGrid1.Sort = flexSortStringAscending
ElseIf Option4 = True Then
MSFlexGrid1.Col = 4
MSFlexGrid1.Sort = flexSortStringAscending
End If
End Sub
d) El código del botón Descendente es:
Private Sub Command2_Click()
If Option1 = True Then
MSFlexGrid1.Col = 1
MSFlexGrid1.Sort = flexSortNumericDescending
ElseIf Option2 = True Then
MSFlexGrid1.Col = 2
MSFlexGrid1.Sort = flexSortStringDescending
ElseIf Option3 = True Then
MSFlexGrid1.Col = 3
MSFlexGrid1.Sort = flexSortStringDescending
ElseIf Option4 = True Then
MSFlexGrid1.Col = 4
MSFlexGrid1.Sort = flexSortStringDescending
End If
End Sub
e) Control Data1
No olvides conectar el control Data a la base de datos mediante su propiedad DatabaseName, y a la tabla
alumnos mediante su propiedad RecordSource.
f) MSFlexGrid1
Del MsFlexGrid modifica su propiedad Cols a 5, DataSource a Data1, Rows a 4, SelectionMode a 1 –
flexSelectionByRow, también puedes seleccionar colores contrastantes em las propiedades BackColorSel y
ForeColorSel.
Al iniciar el formulario, el usuario seleccionará el botón de opción que necesite para elegir el campo
necesario y presionará el botón Ascendente o Descendente para elegir el orden de los datos de la tabla
Alumnos. El Botón cerrar del formulario se deshabilita para forzar el uso del Menú.
57 de 85
Cómo crear una base de datos en Access con Visual Basic
Creando la pantalla de Búsquedas4
Crea un formulario, con una etiqueta, cuatro cajas de texto, un MSFlexGrid y un control Data, cuya
propiedad Visible debe ser cambiada a False, para que se vea más o menos como se ve abajo.
Al igual que el ejercicio anterior, el formulario debe tener un menú con la opción Volver a Opciones.
a) El código del formulario Búsquedas4 es:
Private Sub Form_Load()
MSFlexGrid1.ColWidth(0) = 300
MSFlexGrid1.ColWidth(1) = 800
MSFlexGrid1.ColWidth(2) = 2100
MSFlexGrid1.ColWidth(3) = 2500
MSFlexGrid1.ColWidth(4) = 1000
End Sub
Private Sub Form_Unload(Cancel As Integer)
Cancel = 1
MsgBox "Haz Clic en Archivo", vbInformation, "¡Aviso Importante!"
End Sub
b) El código del menú Volver a Opciones es:
Private Sub volver_Click()
Busquedas4.Hide
Opciones.Show
End Sub
58 de 85
Cómo crear una base de datos en Access con Visual Basic
c) El código del MSFlexGrid es:
Private Sub MSFlexGrid1_DblClick()
MSFlexGrid1.Col = 1
Text1 = MSFlexGrid1.Text
MSFlexGrid1.Col = 2
Text2 = MSFlexGrid1.Text
MSFlexGrid1.Col = 3
Text3 = MSFlexGrid1.Text
MSFlexGrid1.Col = 4
Text4 = MSFlexGrid1.Text
Text1.BackColor = &HC0FFFF
Text2.BackColor = &HC0FFFF
Text3.BackColor = &HC0FFFF
Text4.BackColor = &HC0FFFF
Text1.ForeColor = &HFF0000
Text2.ForeColor = &HFF0000
Text3.ForeColor = &HFF0000
Text4.ForeColor = &HFF0000
End Sub
d) Control Data1
No olvides conectar el control Data a la base de datos mediante su propiedad DatabaseName, y a la tabla
alumnos mediante su propiedad RecordSource.
e) MSFlexGrid1
Del MsFlexGrid modifica su propiedad Cols a 5, DataSource a Data1, Rows a 4, SelectionMode a 1 –
flexSelectionByRow, también puedes seleccionar colores contrastantes em las propiedades BackColorSel y
ForeColorSel.
Al iniciar el formulario, el usuario hará doble clic en cualquier registro del MSFlexGrid y este se transferirá
a las cajas de texto. El Botón cerrar del formulario se deshabilita para forzar el uso del Menú.
59 de 85
Cómo crear una base de datos en Access con Visual Basic
Creando la pantalla de Búsquedas5
Crea un formulario, con una etiqueta, cuatro cajas de lista, un MSFlexGrid y un control Data, cuya
propiedad Visible debe ser cambiada a False, para que se vea más o menos como se ve abajo.
Al igual que el ejercicio anterior, el formulario debe tener un menú con la opción Volver a Opciones.
a) El código del formulario Búsquedas5 es:
Private Sub Form_Load()
MSFlexGrid1.ColWidth(0) = 300
MSFlexGrid1.ColWidth(1) = 800
MSFlexGrid1.ColWidth(2) = 2100
MSFlexGrid1.ColWidth(3) = 2500
MSFlexGrid1.ColWidth(4) = 1000
End Sub
Private Sub Form_Unload(Cancel As Integer)
Cancel = 1
MsgBox "Haz Clic en Archivo", vbInformation, "¡Aviso Importante!"
End Sub
b) El código del menú Volver a Opciones es:
Private Sub volver_Click()
Busquedas5.Hide
Opciones.Show
End Sub
60 de 85
Cómo crear una base de datos en Access con Visual Basic
c) El código del MSFlexGrid es:
Private Sub MSFlexGrid1_DblClick()
MSFlexGrid1.Col = 1
List1.AddItem MSFlexGrid1.Text
MSFlexGrid1.Col = 2
List2.AddItem MSFlexGrid1.Text
MSFlexGrid1.Col = 3
List3.AddItem MSFlexGrid1.Text
MSFlexGrid1.Col = 4
List4.AddItem MSFlexGrid1.Text
List1.BackColor = &HC0FFFF
List2.BackColor = &HC0FFFF
List3.BackColor = &HC0FFFF
List4.BackColor = &HC0FFFF
List1.ForeColor = &HFF0000
List2.ForeColor = &HFF0000
List3.ForeColor = &HFF0000
List4.ForeColor = &HFF0000
End Sub
d) Control Data1
No olvides conectar el control Data a la base de datos mediante su propiedad DatabaseName, y a la tabla
alumnos mediante su propiedad RecordSource.
e) MSFlexGrid1
Del MsFlexGrid modifica su propiedad Cols a 5, DataSource a Data1, Rows a 4, SelectionMode a 1 –
flexSelectionByRow, también puedes seleccionar colores contrastantes em las propiedades BackColorSel y
ForeColorSel.
Al iniciar el formulario, el usuario hará doble clic en cualquier registro del MSFlexGrid y este se transferirá
a las cajas de lista, que a diferencia del ejercicio anterior, guardarán más de un registro a la vez. El Botón
cerrar del formulario se deshabilita para forzar el uso del Menú.
61 de 85
Cómo crear una base de datos en Access con Visual Basic
Creando la pantalla de Búsquedas6
Crea un formulario, con tres etiquetas, dos cajas de combo, dos botones, un MSFlexGrid y un control Data,
cuya propiedad Visible debe ser cambiada a False, para que se vea más o menos como se ve abajo.
Al igual que el ejercicio anterior, el formulario debe tener un menú con la opción Volver a Opciones.
a) El código del formulario Búsquedas6 es:
Private Sub Form_Load()
MSFlexGrid1.ColWidth(0) = 300
MSFlexGrid1.ColWidth(1) = 800
MSFlexGrid1.ColWidth(2) = 2100
MSFlexGrid1.ColWidth(3) = 2500
MSFlexGrid1.ColWidth(4) = 1000
End Sub
Private Sub Form_Unload(Cancel As Integer)
Cancel = 1
MsgBox "Haz Clic en Archivo", vbInformation, "¡Aviso Importante!"
End Sub
b) El código del menú Volver a Opciones es:
Private Sub volver_Click()
Busquedas6.Hide
Opciones.Show
End Sub
62 de 85
Cómo crear una base de datos en Access con Visual Basic
c) El código de la caja de combo1 es:
Private Sub Combo1_DropDown()
On Error Resume Next
Dim i As Long, enlatabla As Boolean
Data1.Recordset.MoveFirst
While Not Data1.Recordset.EOF
enlatabla = False
For i = 0 To Combo1.ListCount - 1
If Combo1.List(i) = Data1.Recordset("carrera") Then
enlatabla = True
Exit For
End If
Next i
If Not enlatabla Then
Combo1.AddItem Data1.Recordset("carrera")
End If
Data1.Recordset.MoveNext
Wend
End Sub
d) El código de la caja de combo2 es:
Private Sub Combo2_DropDown()
On Error Resume Next
Dim i As Long, enlatabla As Boolean
Data1.Recordset.MoveFirst
While Not Data1.Recordset.EOF
enlatabla = False
For i = 0 To Combo2.ListCount - 1
If Combo2.List(i) = Data1.Recordset("turno") Then
enlatabla = True
Exit For
End If
Next i
If Not enlatabla Then
Combo2.AddItem Data1.Recordset("turno")
End If
Data1.Recordset.MoveNext
Wend
End Sub
e) El código del botón Buscar es:
Private Sub Command1_Click()
Data1.RecordSource = "select * from alumnos where carrera like '" & Combo1.Text & "' and turno like '" &
Combo2.Text & "'"
Data1.Refresh
Label3 = "Total de Registros de la Consulta: " & (MSFlexGrid1.Rows) - 1 & ""
End Sub
63 de 85
Cómo crear una base de datos en Access con Visual Basic
f) El código del botón Todos los Registros es:
Private Sub Command2_Click()
Data1.RecordSource = "alumnos"
Data1.Refresh
Label3 = "Total de Registros de la Consulta: " & (MSFlexGrid1.Rows) - 1 & ""
End Sub
g) Control Data1
No olvides conectar el control Data a la base de datos mediante su propiedad DatabaseName, y a la tabla
alumnos mediante su propiedad RecordSource.
h) MSFlexGrid1
Del MsFlexGrid modifica su propiedad Cols a 5, DataSource a Data1, Rows a 4, SelectionMode a 1 –
flexSelectionByRow, también puedes seleccionar colores contrastantes em las propiedades BackColorSel y
ForeColorSel.
Private Sub MSFlexGrid1_EnterCell()
MSFlexGrid1.CellBackColor = &HFF&
MSFlexGrid1.CellForeColor = &HFFFFFF
MSFlexGrid1.CellFontBold = True
End Sub
Private Sub MSFlexGrid1_LeaveCell()
MSFlexGrid1.CellBackColor = &HFFFFFF
MSFlexGrid1.CellForeColor = &H0&
MSFlexGrid1.CellFontBold = False
End Sub
Nota: Copia estos códigos en los eventos del MsFlexGrid y haz clic en cualquier celda.
i) La etiqueta3 debe tener su propiedad Autosize en True, y la propiedad Caption en nada.
Al iniciar el formulario, el usuario selecionará de las cajas de combo1 y combo2 los campos de la tabla que
servirán para hacer la búsqueda respectiva, al presionar el botón Buscar, los registros se mostrarán en el
MSFlexGrid y la etiqueta3 mostrará la cantidad de registros mostrados. El Botón cerrar del formulario se
deshabilita para forzar el uso del Menú.
64 de 85
Cómo crear una base de datos en Access con Visual Basic
Creando la pantalla de Búsquedas7
Crea un formulario, con cuatro etiquetas, dos cajas de combo, dos botones, un MSFlexGrid y un control
Data, cuya propiedad Visible debe ser cambiada a False, para que se vea más o menos como se ve abajo.
Al igual que el ejercicio anterior, el formulario debe tener un menú con la opción Volver a Opciones.
a) El código del formulario Búsquedas7 es:
Private Sub Form_Load()
MSFlexGrid1.ColWidth(0) = 300
MSFlexGrid1.ColWidth(1) = 800
MSFlexGrid1.ColWidth(2) = 2100
MSFlexGrid1.ColWidth(3) = 2500
MSFlexGrid1.ColWidth(4) = 1000
Combo1.AddItem "Carrera"
Combo1.AddItem "Turno"
End Sub
Private Sub Form_Unload(Cancel As Integer)
Cancel = 1
MsgBox "Haz Clic en Archivo", vbInformation, "¡Aviso Importante!"
End Sub
65 de 85
Cómo crear una base de datos en Access con Visual Basic
Private Sub Form_Activate()
Data1.RecordSource = "alumnos"
Data1.Refresh
Label4 = "Total de Registros de la Consulta: " & (MSFlexGrid1.Rows) - 1 & ""
Combo2.Clear
End Sub
b) El código del menú Volver a Opciones es:
Private Sub volver_Click()
Busquedas7.Hide
Opciones.Show
End Sub
c) El código de la caja de combo1 es:
Private Sub Combo1_Click()
On Error Resume Next
If Combo1.Text = "Carrera" Then
Dim J As Long, enlatabla As Boolean
Data1.Recordset.MoveFirst
While Not Data1.Recordset.EOF
enlatabla = False
For J = 0 To Combo2.ListCount - 1
If Combo2.List(J) = Data1.Recordset("carrera") Then
enlatabla = True
Exit For
End If
Next J
If Not enlatabla Then
Combo2.AddItem Data1.Recordset("carrera")
End If
Data1.Recordset.MoveNext
Wend
End If
If Combo1.Text = "Turno" Then
Dim a As Long, yaenlatabla As Boolean
Data1.Recordset.MoveFirst
While Not Data1.Recordset.EOF
yaenlatabla = False
For a = 0 To Combo2.ListCount - 1
If Combo2.List(a) = Data1.Recordset("turno") Then
yaenlatabla = True
Exit For
End If
66 de 85
Cómo crear una base de datos en Access con Visual Basic
Next a
If Not yaenlatabla Then
Combo2.AddItem Data1.Recordset("turno")
End If
Data1.Recordset.MoveNext
Wend
End If
End Sub
d) El código del botón Buscar es:
Private Sub Command1_Click()
On Error Resume Next
If Combo1.Text = "Carrera" And Combo2.Text <> "Selecciona" Then
Data1.RecordSource = "select * from alumnos where carrera like '" & Combo2.Text & "'"
Data1.Refresh
Label4 = "Total de Registros de la Consulta: " & (MSFlexGrid1.Rows) - 1 & ""
If Data1.Recordset.RecordCount = 0 Then
MsgBox "Este Registro No Corresponde con el Campo que Seleccionaste" + vbCrLf + "Presiona el botón:
'Todos los Registros' y Selecciona Otro Campo", vbInformation, "¡Aviso Importante!"
End If
End If
If Combo1.Text = "Turno" And Combo2.Text <> "Selecciona" Then
Data1.RecordSource = "select * from alumnos where turno like '" & Combo2.Text & "'"
Data1.Refresh
Label4 = "Total de Registros de la Consulta: " & (MSFlexGrid1.Rows) - 1 & ""
If Data1.Recordset.RecordCount = 0 Then
MsgBox "Este Registro No Corresponde con el Campo que Seleccionaste" + vbCrLf + "Presiona el botón:
'Todos los Registros' y Selecciona Otro Campo", vbInformation, "¡Aviso Importante!"
End If
End If
If Combo1 <> "" And Combo2 = "" Then
MsgBox "Selecciona el Registro", vbInformation, "¡Aviso Importante!"
End If
End Sub
e) El código del botón Todos los Registros es:
Private Sub Command2_Click()
Data1.RecordSource = "alumnos"
Data1.Refresh
Label4 = "Total de Registros de la Consulta: " & (MSFlexGrid1.Rows) - 1 & ""
Combo2.Clear
End Sub
67 de 85
Cómo crear una base de datos en Access con Visual Basic
f) Control Data1
No olvides conectar el control Data a la base de datos mediante su propiedad DatabaseName, y a la tabla
alumnos mediante su propiedad RecordSource.
g) MSFlexGrid1
Del MsFlexGrid modifica su propiedad Cols a 5, DataSource a Data1, Rows a 4, SelectionMode a 1 –
flexSelectionByRow, también puedes seleccionar colores contrastantes em las propiedades BackColorSel y
ForeColorSel.
h) La etiqueta4 debe tener su propiedad Autosize en True, y la propiedad Caption en nada.
Al iniciar el formulario, el usuario selecionará de la caja de combo1, el campo de la tabla dentro del cual se
realizará la búsqueda y del combo2 el registro que servirá para hacer la búsqueda, al presionar el botón
Buscar, los registros se mostrarán en el MSFlexGrid y la etiqueta4 mostrará la cantidad de registros
mostrados. El Botón cerrar del formulario se deshabilita para forzar el uso del Menú.
Selecciona la caja de combo1 y en su propiedad ToolTipText escribe: 1. Selecciona el Campo
Selecciona la caja de combo2 y en su propiedad ToolTipText escribe: 2. Selecciona el Registro
Selecciona el botón Buscar y en su propiedad ToolTipText escribe: 3. Realiza la Búsqueda
Selecciona el botón Todos los Registros y en su propiedad ToolTipText escribe: 4. Presiona esta botón antes
de cambiar de campo.
68 de 85
Cómo crear una base de datos en Access con Visual Basic
Creando la pantalla de Búsquedas8
Crea un formulario, con cuatro etiquetas, dos cajas de texto, dos botones, un MSFlexGrid y un control Data,
cuya propiedad Visible debe ser cambiada a False, para que se vea más o menos como se ve abajo.
Al igual que el ejercicio anterior, el formulario debe tener un menú con la opción Volver a Opciones.
a) El código del formulario Búsquedas8 es:
Private Sub Form_Load()
MSFlexGrid1.ColWidth(0) = 300
MSFlexGrid1.ColWidth(1) = 800
MSFlexGrid1.ColWidth(2) = 2100
MSFlexGrid1.ColWidth(3) = 2500
MSFlexGrid1.ColWidth(4) = 1000
End Sub
Private Sub Form_Unload(Cancel As Integer)
Cancel = 1
MsgBox "Haz Clic en Archivo", vbInformation, "¡Aviso Importante!"
End Sub
Private Sub Form_Activate()
Text1.SetFocus
End Sub
69 de 85
Cómo crear una base de datos en Access con Visual Basic
b) El código del menú Volver a Opciones es:
Private Sub volver_Click()
Busquedas8.Hide
Opciones.Show
End Sub
c) El código del botón Buscar es:
Private Sub Command1_Click()
Data1.RecordSource = "select * from alumnos where matricula between " & Val(Text1) & " And " &
Val(Text2) & ""
Data1.Refresh
Label4 = "Total de Registros de la búsqueda: " & (MSFlexGrid1.Rows) - 1 & ""
If Data1.Recordset.RecordCount = 0 Then
MsgBox "No Hay Registros con estos Parámetros" + vbCrLf + "Por Favor Revisa tus Datos", vbInformation,
"¡Aviso Importante!"
End If
Text1 = ""
Text2 = ""
Text1.SetFocus
End Sub
d) El código del botón Todos los Registros es:
Private Sub Command2_Click()
Data1.RecordSource = "alumnos"
Data1.Refresh
Label4 = "Total de Registros de la búsqueda: " & (MSFlexGrid1.Rows) - 1 & ""
Text1.SetFocus
End Sub
e) Control Data1
No olvides conectar el control Data a la base de datos mediante su propiedad DatabaseName, y a la tabla
alumnos mediante su propiedad RecordSource.
f) MSFlexGrid1
Del MsFlexGrid modifica su propiedad Cols a 5, DataSource a Data1, Rows a 4, SelectionMode a 1 –
flexSelectionByRow, también puedes seleccionar colores contrastantes em las propiedades BackColorSel y
ForeColorSel.
g) La etiqueta3 debe tener su propiedad Autosize en True, y la propiedad Caption en nada.
Al iniciar el formulario, el usuario podrá realizar búsquedas por rango del campo Matrículas, al presionar el
botón Buscar, los registros se mostrarán en el MSFlexGrid y la etiqueta4 mostrará la cantidad de registros
mostrados. El Botón cerrar del formulario se deshabilita para forzar el uso del Menú.
70 de 85
Cómo crear una base de datos en Access con Visual Basic
Creando la pantalla de Búsquedas9
Crea un formulario, con dos etiquetas, dos cajas de texto, dos botones, un MSFlexGrid y un control Data,
cuya propiedad Visible debe ser cambiada a False, para que se vea más o menos como se ve abajo.
Al igual que el ejercicio anterior, el formulario debe tener un menú con la opción Volver a Opciones.
a) El código del formulario Búsquedas9 es:
Private Sub Form_Load()
MSFlexGrid1.ColWidth(0) = 300
MSFlexGrid1.ColWidth(1) = 800
MSFlexGrid1.ColWidth(2) = 2100
MSFlexGrid1.ColWidth(3) = 2500
MSFlexGrid1.ColWidth(4) = 1000
End Sub
Private Sub Form_Unload(Cancel As Integer)
Cancel = 1
MsgBox "Haz Clic en Archivo", vbInformation, "¡Aviso Importante!"
End Sub
71 de 85
Cómo crear una base de datos en Access con Visual Basic
b) El código del menú Volver a Opciones es:
Private Sub volver_Click()
Busquedas9.Hide
Opciones.Show
End Sub
c) El código del Combo1 es:
Private Sub Combo1_DropDown()
On Error Resume Next
Dim q As Long, enlatabla1 As Boolean
Data1.Recordset.MoveFirst
While Not Data1.Recordset.EOF
enlatabla1 = False
For q = 0 To Combo1.ListCount - 1
If Combo1.List(q) = Data1.Recordset("carrera") Then
enlatabla1 = True
Exit For
End If
Next q
If Not enlatabla1 Then
Combo1.AddItem Data1.Recordset("carrera")
End If
Data1.Recordset.MoveNext
Wend
Dim k As Long, enlatabla2 As Boolean
Data1.Recordset.MoveFirst
While Not Data1.Recordset.EOF
enlatabla2 = False
For k = 0 To Combo1.ListCount - 1
If Combo1.List(k) = Data1.Recordset("turno") Then
enlatabla2 = True
Exit For
End If
Next k
If Not enlatabla2 Then
Combo1.AddItem Data1.Recordset("turno")
End If
Data1.Recordset.MoveNext
Wend
End Sub
72 de 85
Cómo crear una base de datos en Access con Visual Basic
d) El código del botón Buscar es:
Private Sub Command1_Click()
Data1.RecordSource = "select * from alumnos where carrera like '" & Combo1.Text & "' or turno like '" &
Combo1.Text & "'"
Data1.Refresh
Label2 = "Total de Registros de la Consulta: " & (MSFlexGrid1.Rows) - 1 & ""
If Data1.Recordset.EOF Then
MsgBox "Selecciona un Campo para ejecutar la Búsqueda", vbInformation, "Selecciona un Campo"
Data1.RecordSource = "alumnos"
Data1.Refresh
Label2 = "Total de Registros de la Consulta: " & (MSFlexGrid1.Rows) - 1 & ""
End If
End Sub
e) El código del botón Todos los Registros es:
Private Sub Command2_Click()
Data1.RecordSource = "alumnos"
Data1.Refresh
Label2 = "Total de Registros de la Consulta: " & (MSFlexGrid1.Rows) - 1 & ""
End Sub
e) Control Data1
No olvides conectar el control Data a la base de datos mediante su propiedad DatabaseName, y a la tabla
alumnos mediante su propiedad RecordSource.
f) MSFlexGrid1
Del MsFlexGrid modifica su propiedad Cols a 5, DataSource a Data1, Rows a 4, SelectionMode a 1 –
flexSelectionByRow, también puedes seleccionar colores contrastantes em las propiedades BackColorSel y
ForeColorSel.
g) La etiqueta2 debe tener su propiedad Autosize en True, y la propiedad Caption en nada.
Al iniciar el formulario, el usuario podrá realizar búsquedas por dos campos usando una sola caja de combo,
em la cual se mostrarán los registros de los campos Carrera y Turno, al presionar el botón Buscar, los
registros se mostrarán en el MSFlexGrid y la etiqueta2 mostrará la cantidad de registros mostrados. El
Botón cerrar del formulario se deshabilita para forzar el uso del Menú.
73 de 85
Cómo crear una base de datos en Access con Visual Basic
Creando la pantalla de Búsquedas10
Crea un formulario, con dos etiquetas, un botón, un MSFlexGrid y un control Data, cuya propiedad Visible
debe ser cambiada a False, para que se vea más o menos como se ve abajo.
Al igual que el ejercicio anterior, el formulario debe tener un menú con la opción Volver a Opciones.
a) El código del formulario Búsquedas10 es:
Private Sub Form_Load()
MSFlexGrid1.ColWidth(0) = 800
MSFlexGrid1.ColWidth(1) = 2400
MSFlexGrid1.ColWidth(2) = 2500
MSFlexGrid1.ColWidth(3) = 1000
Data1.RecordSource = "alumnos"
Data1.Refresh
Label2 = "Total de Registros de la Consulta: " & (MSFlexGrid1.Rows) - 1 & ""
End Sub
Private Sub Form_Unload(Cancel As Integer)
Cancel = 1
MsgBox "Haz Clic en Archivo", vbInformation, "¡Aviso Importante!"
End Sub
74 de 85
Cómo crear una base de datos en Access con Visual Basic
b) El código del menú Volver a Opciones es:
Private Sub volveraopciones_Click()
Busquedas10.Hide
Opciones.Show
End Sub
c) El código del botón Todos los Registros es:
Private Sub Command1_Click()
Data1.RecordSource = "alumnos"
Data1.Refresh
MSFlexGrid1.Refresh
Label2 = "Total de Registros de la Consulta: " & (MSFlexGrid1.Rows) - 1 & ""
End Sub
d) El código del MSFlexGrid1 es:
Private Sub MSFlexGrid1_DblClick()
Modificar.Show
End Sub
Aquí nos damos cuenta que hay que crear un formulario al que llamaremos Modificar, el cual contendrá
cuatro etiquetas, cuatro cajas de texto, las cuales formarán una matriz, para lo cual sencillamente copiamos
la primera caja de texto y cuando Visual nos pregunte: Ya existe un control llamado ‘Text1’. ¿Desea crear
una matriz de controles? Presionamos el botón Sí; un botón y un control Data, cuya propiedad Visible debe
ser cambiada a False, para que se vea más o menos como se ve abajo.
e) El código del formulario Modificar es:
En General declaramos la variable: Private a(4) As String
75 de 85
Cómo crear una base de datos en Access con Visual Basic
Private Sub Form_Load()
Dim i As Integer
With Busquedas10.MSFlexGrid1
For i = 0 To .Cols - 1
Text1(i).Text = .TextMatrix(.Row, i)
a(i) = .TextMatrix(.Row, i)
Next
End With
End Sub
f) El código del botón Actualizar Registros es:
Private Sub Command1_Click()
Dim modificar As String
modificar = "select * from alumnos where matricula=" & Val(Text1(0))
Data1.RecordSource = modificar
Data1.Refresh
Data1.Recordset.Edit
Data1.Recordset!nombre = Text1(1)
Data1.Recordset!carrera = Text1(2)
Data1.Recordset!turno = Text1(3)
Data1.Recordset.Update
Busquedas10.MSFlexGrid1.Clear
Unload Me
End Sub
g) Control Data1
No olvides conectar el control Data a la base de datos mediante su propiedad DatabaseName, y a la tabla
alumnos mediante su propiedad RecordSource.
h) La etiqueta2 debe tener su propiedad Autosize en True, y la propiedad Caption en nada.
Al iniciar el formulario Búsquedas10, el usuario podrá hacer doble clic en cualquier registro para editarlo de
forma rápida en el formulario Modificar. Cuando de lleve a cabo la edición del registro, presionando el
botón Todos los Registros, podremos ver el registro actualizado a nuestra conveniencia en el MSFlexGrid y
la etiqueta2 mostrará la cantidad de registros mostrados. El Botón cerrar del formulario se deshabilita para
forzar el uso del Menú.
76 de 85
Cómo crear una base de datos en Access con Visual Basic
En esta parte del ejercicio vamos a realizar una búsqueda para contar la cantidad de registros que satisfagan
cierta condición, por ejemplo: cuántos alumnos hay que están inscritos en cierta carrera, turno, etc.
Para lo cual crea un formulario con cuatro etiquetas, cuatro cajas de texto, dos MSFlexGrid, un combobox,
un botón y dos controles Data, cuya propiedad Visible debe ser cambiada a False, para que se vea más o
menos como se ve abajo.
Al igual que el ejercicio anterior, el formulario debe tener un menú con la opción Volver a Opciones.
a) El código del combobox1 es:
Private Sub Combo1_DropDown()
On Error Resume Next
Do Until Data2.Recordset.EOF
Combo1.AddItem Data2.Recordset.Fields("carrera")
Data2.Recordset.MoveNext
Loop
End Sub
b) El código del botón Contar Carreras es:
Private Sub Command1_Click()
Data2.RecordSource = "select count(carrera) as carreras from alumnos where carrera = '" & Combo1 & "'"
Data2.Refresh
End Sub
77 de 85
Cómo crear una base de datos en Access con Visual Basic
c) Controles Data
No olvides conectar los controles Data a la base de datos mediante su propiedad DatabaseName, y a la tabla
alumnos mediante su propiedad RecordSource.
d) Selecciona el objeto MSFlexGrid1, en su propiedad DataSource selecciona Data1, modifica su
propiedad Cols a 5, cambia su propiedad Rows a 5, el MSFlexGrid2, debe ser conectado con el control
Data2, modifica su propiedad Cols a 5, cambia su propiedad Rows a 2, opcionalmente puedes modificar sus
propiedades de BackColor de la manera que más te agrade.
Al iniciar el formulario Búsquedas11, el usuario podrá seleccionar una carrera de la caja de combo y al
presionar el botón Contar Carreras, el MsFlexGrid2 mostrará la cantidad de registros que satisfagan la
condición dada. El Botón cerrar del formulario se deshabilita para forzar el uso del Menú.
78 de 85
Cómo crear una base de datos en Access con Visual Basic
Supongamos que queremos totalizar una columna, por motivos de la tabla que estamos usando sumaremos el
total de matrículas.
Para este ejercicio crea un formulario con cuatro etiquetas, cuatro cajas de texto, dos MSFlexGrid, un botón
y dos controles Data, cuya propiedad Visible debe ser cambiada a False, para que se vea más o menos como
se ve abajo.
Al igual que el ejercicio anterior, el formulario debe tener un menú con la opción Volver a Opciones.
a) El código del botón La Suma de Matrículas es:
Private Sub Command1_Click()
Data2.RecordSource = "select sum(matricula) as suma from alumnos"
Data2.Refresh
End Sub
79 de 85
Cómo crear una base de datos en Access con Visual Basic
Enseguida veremos como emplear el control DTPicker para realizar búsquedas por fechas, para lo cual, en la
tabla alumnos hay que agregar um campo que se llame fecha_inscripción, misma que usaremos para las
consultas.
Crea un formulario con 5 etiquetas y 5 cajas de texto (recuerda que agregamos el campo fecha_inscripcion a
la tabla alumnos), incluye un MSFlexGrid, 3 etiquetas, 2 botones, un control Data y 2 DatePicker. Para
agregar los DTPicker ve a Proyecto, Componentes, Controles, Microsoft Windows Common Controls-2
6.0, haz clic en Aplicar y Aceptar, y estará disponible en la caja de herramienta. De modo que se vea más o
menos como se ve abajo.
Al igual que el ejercicio anterior, el formulario debe tener un menú con la opción Volver a Opciones.
a) El código del botón Búsqueda por Fecha es:
Private Sub Command1_Click()
Data1.RecordSource = "select * from alumnos where fecha_inscripcion between #" & DTPicker1.Value & "#
and #" & DTPicker2.Value & "#"
Data1.Refresh
Label6 = "Total de Registros de la búsqueda: " & (MSFlexGrid1.Rows) - 1 & ""
If Data1.Recordset.RecordCount = 0 Then
MsgBox "No Hay Registros con estos Parámetros" + vbCrLf + "Por Favor Revisa tus Datos", vbInformation,
"¡Aviso Importante!"
80 de 85
Cómo crear una base de datos en Access con Visual Basic
End If
End Sub
b) El código del botón Ver todos los Registros es:
Private Sub Command2_Click()
Data1.RecordSource = "alumnos"
Data1.Refresh
MSFlexGrid1.Refresh
End Sub
c) El código del formulario Búsquedas13 es:
Private Sub Form_Load()
MSFlexGrid1.ColWidth(0) = 400
MSFlexGrid1.ColWidth(1) = 800
MSFlexGrid1.ColWidth(2) = 2300
MSFlexGrid1.ColWidth(3) = 1400
MSFlexGrid1.ColWidth(4) = 900
MSFlexGrid1.ColWidth(5) = 1200
End Sub
d) Control Data
No olvides conectar el control Data a la base de datos mediante su propiedad DatabaseName, y a la tabla
alumnos mediante su propiedad RecordSource.
e) Selecciona el objeto MSFlexGrid1, en su propiedad DataSource selecciona Data1, modifica su
propiedad Cols a 5, cambia su propiedad Rows a 5, opcionalmente puedes modificar sus propiedades de
BackColor de la manera que más te agrade.
Al iniciar el formulario Búsquedas13, el usuario podrá seleccionar fechas de los objetos DTPicker para
realizar búsquedas al presionar el botón Búsquedas por Fecha, el MsFlexGrid1 mostrará la cantidad de
registros que satisfagan la condición dada.
81 de 85
Cómo crear una base de datos en Access con Visual Basic
En parte del ejercicio, veremos algunas formas muy sencillas de imprimir el resultado de las consultas que se
muestran em el MSFlexGrid, quiero mencionar que aunque pudieramos emplear un solo formulario, para los
ejercicios, por cuestión de sencillez en la explicación usaremos más de uno.
Para este ejercicio crea un formulario con cuatro etiquetas, cuatro cajas de texto, un MSFlexGrid, tres
botones y un control Data, cuya propiedad Visible debe ser cambiada a False, para que se vea más o menos
como se ve abajo.
Al igual que el ejercicio anterior, el formulario debe tener un menú con la opción Volver a Opciones.
a) El código del formulario Impresión1 es:
Private Sub Form_Load()
MSFlexGrid1.ColWidth(0) = 400
MSFlexGrid1.ColWidth(1) = 800
MSFlexGrid1.ColWidth(2) = 2500
MSFlexGrid1.ColWidth(3) = 2000
MSFlexGrid1.ColWidth(4) = 1100
End Sub
82 de 85
Cómo crear una base de datos en Access con Visual Basic
Private Sub Form_Unload(Cancel As Integer)
Cancel = 1
MsgBox "Haz Clic en Archivo", vbInformation, "¡Aviso Importante!"
End Sub
b) El código del botón Ocultar Registros es:
Private Sub Command1_Click()
MSFlexGrid1.Clear
End Sub
c) El código del botón Mostrar Registros es:
Private Sub Command2_Click()
Data1.RecordSource = "alumnos"
Data1.Refresh
With MSFlexGrid1
For a = 1 To .Rows - 1
.Row = a
For B = 1 To .Cols - 1
.Col = B
.CellBackColor = IIf((a Mod 2) = 1, Val(&HC0FFFF), Val(&HC0FFC0))
.CellFontBold = True
.CellForeColor = &HFF0000
Next B
Next a
End With
End Sub
d) El código del botón Imprimir Registros Seleccionados es:
Private Sub Command3_Click()
Printer.Print MSFlexGrid1.Clip
Printer.EndDoc
End Sub
e) Control Data1
No olvides conectar el control Data a la base de datos mediante su propiedad DatabaseName, y a la tabla
alumnos mediante su propiedad RecordSource.
f) Selecciona el objeto MSFlexGrid, en su propiedad DataSource selecciona Data1, modifica su propiedad
Cols a 5, cambia su propiedad Rows a 5, opcionalmente puedes modificar sus propiedades de BackColor de
la manera que más te agrade.
Al iniciar el formulario Impresión1, el usuario podrá ver u ocultar los registros mostrados en el MSFlexGrid,
y podrá imprimir los registros que haya seleccionado del MSFlexGrid. El Botón cerrar del formulario se
deshabilita para forzar el uso del Menú.
83 de 85
Cómo crear una base de datos en Access con Visual Basic
Creando la pantalla de Impresión2
Para este ejercicio crea un formulario con cuatro etiquetas, cuatro cajas de texto, un MSFlexGrid, tres
botones y un control Data, cuya propiedad Visible debe ser cambiada a False, para que se vea más o menos
como se ve abajo.
a) El código del botón Imprimir Formulario es:
Private Sub Command3_Click()
Impresion2.PrintForm
Printer.EndDoc
End Sub
84 de 85
Cómo crear una base de datos en Access con Visual Basic
Creando la pantalla de Impresión3
Para este ejercicio crea un formulario con cuatro etiquetas, cuatro cajas de texto, un MSFlexGrid, tres
botones y un control Data, cuya propiedad Visible debe ser cambiada a False, para que se vea más o menos
como se ve abajo.
a) El código del botón Imprimir Registros es:
Private Sub Command3_Click()
Printer.PaintPicture MSFlexGrid1.Picture, 0, 0
Printer.EndDoc
End Sub
Tutorial creado por:
Lic. Jorge Alvarez S.
[email protected]
85 de 85
Descargar