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

85
Cómo crear una base de datos en Access con Visual Basic 1 de 85 www.FreeLibros.com 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á: “mibasededatospara 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

Transcript of Cómo crear una base de datos en Access con Visual Basic - FL

Page 1: Cómo crear una base de datos en Access con Visual Basic - FL

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

1 de 85 www.FreeLibros.com

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…

Page 2: Cómo crear una base de datos en Access con Visual Basic - FL

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

2 de 85 www.FreeLibros.com

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…

Page 3: Cómo crear una base de datos en Access con Visual Basic - FL

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

3 de 85 www.FreeLibros.com

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.

Page 4: Cómo crear una base de datos en Access con Visual Basic - FL

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

4 de 85 www.FreeLibros.com

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.

Page 5: Cómo crear una base de datos en Access con Visual Basic - FL

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

5 de 85 www.FreeLibros.com

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.

Page 6: Cómo crear una base de datos en Access con Visual Basic - FL

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

6 de 85 www.FreeLibros.com

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.

Page 7: Cómo crear una base de datos en Access con Visual Basic - FL

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

7 de 85 www.FreeLibros.com

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.

Page 8: Cómo crear una base de datos en Access con Visual Basic - FL

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

8 de 85 www.FreeLibros.com

g) Cuando hayas agregado los campos de la tabla haz clic en el botón Generar la tabla.

Page 9: Cómo crear una base de datos en Access con Visual Basic - FL

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

9 de 85 www.FreeLibros.com

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.

Page 10: Cómo crear una base de datos en Access con Visual Basic - FL

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

10 de 85 www.FreeLibros.com

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.

Page 11: Cómo crear una base de datos en Access con Visual Basic - FL

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

11 de 85 www.FreeLibros.com

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.

Page 12: Cómo crear una base de datos en Access con Visual Basic - FL

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

12 de 85 www.FreeLibros.com

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.

Page 13: Cómo crear una base de datos en Access con Visual Basic - FL

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

13 de 85 www.FreeLibros.com

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 correcta-

que 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.

Page 14: Cómo crear una base de datos en Access con Visual Basic - FL

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

14 de 85 www.FreeLibros.com

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

Page 15: Cómo crear una base de datos en Access con Visual Basic - FL

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

15 de 85 www.FreeLibros.com

Creando un Menú

En el formulario vamos a crear un menú llamado Movimientos con las siguientes opciones:

Page 16: Cómo crear una base de datos en Access con Visual Basic - FL

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

16 de 85 www.FreeLibros.com

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.

Page 17: Cómo crear una base de datos en Access con Visual Basic - FL

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

17 de 85 www.FreeLibros.com

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

Page 18: Cómo crear una base de datos en Access con Visual Basic - FL

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

18 de 85 www.FreeLibros.com

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.

Page 19: Cómo crear una base de datos en Access con Visual Basic - FL

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

19 de 85 www.FreeLibros.com

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.

Page 20: Cómo crear una base de datos en Access con Visual Basic - FL

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

20 de 85 www.FreeLibros.com

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.

Page 21: Cómo crear una base de datos en Access con Visual Basic - FL

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

21 de 85 www.FreeLibros.com

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.

Page 22: Cómo crear una base de datos en Access con Visual Basic - FL

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

22 de 85 www.FreeLibros.com

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.

Page 23: Cómo crear una base de datos en Access con Visual Basic - FL

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

23 de 85 www.FreeLibros.com

h) Haz clic en: Usar la cadena de conexión y haz clic en Generar…

Page 24: Cómo crear una base de datos en Access con Visual Basic - FL

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

24 de 85 www.FreeLibros.com

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í.

Page 25: Cómo crear una base de datos en Access con Visual Basic - FL

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

25 de 85 www.FreeLibros.com

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.

Page 26: Cómo crear una base de datos en Access con Visual Basic - FL

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

26 de 85 www.FreeLibros.com

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.

Page 27: Cómo crear una base de datos en Access con Visual Basic - FL

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

27 de 85 www.FreeLibros.com

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.

Page 28: Cómo crear una base de datos en Access con Visual Basic - FL

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

28 de 85 www.FreeLibros.com

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.

Page 29: Cómo crear una base de datos en Access con Visual Basic - FL

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

29 de 85 www.FreeLibros.com

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.

Page 30: Cómo crear una base de datos en Access con Visual Basic - FL

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

30 de 85 www.FreeLibros.com

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.

Page 31: Cómo crear una base de datos en Access con Visual Basic - FL

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

31 de 85 www.FreeLibros.com

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.

Page 32: Cómo crear una base de datos en Access con Visual Basic - FL

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

32 de 85 www.FreeLibros.com

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.

Page 33: Cómo crear una base de datos en Access con Visual Basic - FL

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

33 de 85 www.FreeLibros.com

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.

Page 34: Cómo crear una base de datos en Access con Visual Basic - FL

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

34 de 85 www.FreeLibros.com

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í.

Page 35: Cómo crear una base de datos en Access con Visual Basic - FL

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

35 de 85 www.FreeLibros.com

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.

Page 36: Cómo crear una base de datos en Access con Visual Basic - FL

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

36 de 85 www.FreeLibros.com

c) Para que se vea así

Page 37: Cómo crear una base de datos en Access con Visual Basic - FL

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

37 de 85 www.FreeLibros.com

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.

Page 38: Cómo crear una base de datos en Access con Visual Basic - FL

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

38 de 85 www.FreeLibros.com

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.

Page 39: Cómo crear una base de datos en Access con Visual Basic - FL

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

39 de 85 www.FreeLibros.com

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.

Page 40: Cómo crear una base de datos en Access con Visual Basic - FL

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

40 de 85 www.FreeLibros.com

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.

Page 41: Cómo crear una base de datos en Access con Visual Basic - FL

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

41 de 85 www.FreeLibros.com

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.

Page 42: Cómo crear una base de datos en Access con Visual Basic - FL

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

42 de 85 www.FreeLibros.com

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.

Page 43: Cómo crear una base de datos en Access con Visual Basic - FL

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

43 de 85 www.FreeLibros.com

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.

Page 44: Cómo crear una base de datos en Access con Visual Basic - FL

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

44 de 85 www.FreeLibros.com

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.

Page 45: Cómo crear una base de datos en Access con Visual Basic - FL

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

45 de 85 www.FreeLibros.com

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.

Page 46: Cómo crear una base de datos en Access con Visual Basic - FL

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

46 de 85 www.FreeLibros.com

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.

Page 47: Cómo crear una base de datos en Access con Visual Basic - FL

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

47 de 85 www.FreeLibros.com

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) Una pantalla para realizar búsquedas por: Matrícula, Carrera y Turno.

b) Una pantalla para efectuar búsquedas de Matrícula usando una caja de combo.

c) Una Pantalla para ordenar todos los registros en forma ascendente y descendente.

d) Una pantalla para mover datos del MSFlexGrid a cajas de texto.

e) 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.

Page 48: Cómo crear una base de datos en Access con Visual Basic - FL

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

48 de 85 www.FreeLibros.com

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.

Page 49: Cómo crear una base de datos en Access con Visual Basic - FL

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

49 de 85 www.FreeLibros.com

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.

Page 50: Cómo crear una base de datos en Access con Visual Basic - FL

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

50 de 85 www.FreeLibros.com

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.

Page 51: Cómo crear una base de datos en Access con Visual Basic - FL

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

51 de 85 www.FreeLibros.com

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

Page 52: Cómo crear una base de datos en Access con Visual Basic - FL

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

52 de 85 www.FreeLibros.com

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

Page 53: Cómo crear una base de datos en Access con Visual Basic - FL

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

53 de 85 www.FreeLibros.com

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ú.

Page 54: Cómo crear una base de datos en Access con Visual Basic - FL

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

54 de 85 www.FreeLibros.com

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

Page 55: Cómo crear una base de datos en Access con Visual Basic - FL

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

55 de 85 www.FreeLibros.com

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ú.

Page 56: Cómo crear una base de datos en Access con Visual Basic - FL

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

56 de 85 www.FreeLibros.com

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

Page 57: Cómo crear una base de datos en Access con Visual Basic - FL

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

57 de 85 www.FreeLibros.com

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ú.

Page 58: Cómo crear una base de datos en Access con Visual Basic - FL

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

58 de 85 www.FreeLibros.com

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

Page 59: Cómo crear una base de datos en Access con Visual Basic - FL

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

59 de 85 www.FreeLibros.com

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ú.

Page 60: Cómo crear una base de datos en Access con Visual Basic - FL

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

60 de 85 www.FreeLibros.com

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

Page 61: Cómo crear una base de datos en Access con Visual Basic - FL

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

61 de 85 www.FreeLibros.com

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ú.

Page 62: Cómo crear una base de datos en Access con Visual Basic - FL

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

62 de 85 www.FreeLibros.com

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

Page 63: Cómo crear una base de datos en Access con Visual Basic - FL

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

63 de 85 www.FreeLibros.com

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

Page 64: Cómo crear una base de datos en Access con Visual Basic - FL

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

64 de 85 www.FreeLibros.com

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ú.

Page 65: Cómo crear una base de datos en Access con Visual Basic - FL

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

65 de 85 www.FreeLibros.com

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

Page 66: Cómo crear una base de datos en Access con Visual Basic - FL

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

66 de 85 www.FreeLibros.com

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

Page 67: Cómo crear una base de datos en Access con Visual Basic - FL

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

67 de 85 www.FreeLibros.com

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

Page 68: Cómo crear una base de datos en Access con Visual Basic - FL

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

68 de 85 www.FreeLibros.com

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.

Page 69: Cómo crear una base de datos en Access con Visual Basic - FL

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

69 de 85 www.FreeLibros.com

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

Page 70: Cómo crear una base de datos en Access con Visual Basic - FL

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

70 de 85 www.FreeLibros.com

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ú.

Page 71: Cómo crear una base de datos en Access con Visual Basic - FL

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

71 de 85 www.FreeLibros.com

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

Page 72: Cómo crear una base de datos en Access con Visual Basic - FL

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

72 de 85 www.FreeLibros.com

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

Page 73: Cómo crear una base de datos en Access con Visual Basic - FL

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

73 de 85 www.FreeLibros.com

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ú.

Page 74: Cómo crear una base de datos en Access con Visual Basic - FL

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

74 de 85 www.FreeLibros.com

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

Page 75: Cómo crear una base de datos en Access con Visual Basic - FL

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

75 de 85 www.FreeLibros.com

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

Page 76: Cómo crear una base de datos en Access con Visual Basic - FL

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

76 de 85 www.FreeLibros.com

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ú.

Page 77: Cómo crear una base de datos en Access con Visual Basic - FL

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

77 de 85 www.FreeLibros.com

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

Page 78: Cómo crear una base de datos en Access con Visual Basic - FL

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

78 de 85 www.FreeLibros.com

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ú.

Page 79: Cómo crear una base de datos en Access con Visual Basic - FL

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

79 de 85 www.FreeLibros.com

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

Page 80: Cómo crear una base de datos en Access con Visual Basic - FL

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

80 de 85 www.FreeLibros.com

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!"

Page 81: Cómo crear una base de datos en Access con Visual Basic - FL

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

81 de 85 www.FreeLibros.com

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.

Page 82: Cómo crear una base de datos en Access con Visual Basic - FL

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

82 de 85 www.FreeLibros.com

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

Page 83: Cómo crear una base de datos en Access con Visual Basic - FL

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

83 de 85 www.FreeLibros.com

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ú.

Page 84: Cómo crear una base de datos en Access con Visual Basic - FL

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

84 de 85 www.FreeLibros.com

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

Page 85: Cómo crear una base de datos en Access con Visual Basic - FL

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

85 de 85 www.FreeLibros.com

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

www.FreeLibros.com