Sei sulla pagina 1di 85

Cmo crear una base de datos en Access con Visual Basic

Introduccin La combinacin de Microsoft Access y Microsoft Visual Basic nos proporciona una excelente herramienta para la creacin 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 ms que bsicos de Visual Basic, sin ms, manos a la obra. Inicio de Visual Basic a) Haz clic en el botn Inicio, seala 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. Creacin de la base de datos a) Haz clic en el botn Complementos de la barra de herramientas. b) Haz clic en Administrador visual de datos

LIC. CLAUDIA CARRILLO G.-INFORMATICA1 de 85

Cmo 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 versin 7.0

LIC. CLAUDIA CARRILLO G.-INFORMATICA2 de 85

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

LIC. CLAUDIA CARRILLO G.-INFORMATICA3 de 85

Cmo crear una base de datos en Access con Visual Basic


f) Ahora aparece nuevamente el Administrador visual de datos mostrando en la barra de ttulo la ruta de acceso de nuestra base de datos y lista para empezar a trabajar.

LIC. CLAUDIA CARRILLO G.-INFORMATICA4 de 85

Cmo crear una base de datos en Access con Visual Basic


Creacin de las tablas de la base de datos
a) Haz clic con el botn derecho del ratn dentro de la Ventana de base de datos y haz clic en Nueva tabla.

LIC. CLAUDIA CARRILLO G.-INFORMATICA5 de 85

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

LIC. CLAUDIA CARRILLO G.-INFORMATICA6 de 85

Cmo 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 sern: - campo: matricula, tipo de datos: long, tamao: (automtico) - campo: nombre, tipo de datos: texto, tamao: 50 - campo: carrera, tipo de datos: texto, tamao: 50 - campo: turno, tipo de datos: texto, tamao: 20 e) En Tamao: 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 Tamao) para cada campo que tendr la tabla.

LIC. CLAUDIA CARRILLO G.-INFORMATICA7 de 85

Cmo crear una base de datos en Access con Visual Basic


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

LIC. CLAUDIA CARRILLO G.-INFORMATICA8 de 85

Cmo crear una base de datos en Access con Visual Basic


h) Y la tabla la podrs 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.

LIC. CLAUDIA CARRILLO G.-INFORMATICA9 de 85

Cmo crear una base de datos en Access con Visual Basic


Introduciendo la informacin en las tablas
a) Haz clic con el botn derecho del ratn en la tabla recin creada de la base de datos y haz clic en Abrir.

LIC. CLAUDIA CARRILLO G.-INFORMATICA10 de 85

Cmo 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 informacin en los campos del primer registro.

c) Cuando termines de introducir la informacin 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 informacin para cada tabla de la base de datos.

LIC. CLAUDIA CARRILLO G.-INFORMATICA11 de 85

Cmo 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, Matrcula, 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, dibjalo en el formulario para que se vea ms o menos como se ve abajo.

LIC. CLAUDIA CARRILLO G.-INFORMATICA12 de 85

Cmo crear una base de datos en Access con Visual Basic


Creando la conexin 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 mostrarn 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 botn de avance del control Data se mostrarn 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.

LIC. CLAUDIA CARRILLO G.-INFORMATICA13 de 85

Cmo 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 ms te agrade. 4. Este es el cdigo 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

LIC. CLAUDIA CARRILLO G.-INFORMATICA14 de 85

Cmo 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:

LIC. CLAUDIA CARRILLO G.-INFORMATICA15 de 85

Cmo crear una base de datos en Access con Visual Basic


a) Haz clic con el botn derecho del ratn sobre el formulario y haz clic en el Editor de mens b)

c) Y aparece la caja Editor de mens.

LIC. CLAUDIA CARRILLO G.-INFORMATICA16 de 85

Cmo crear una base de datos en Access con Visual Basic


d) En Caption introduce el nombre (que se mostrar en el formulario) del men. e) En Name introduce el nombre que utilizar Visual Basic. f) Haz clic en el botn Siguiente para crear otro men. g) Haz clic en el botn con la flecha hacia la derecha y aparecern cuatro puntos, lo cual indica que el siguiente rengln ser una opcin del men. h) En Shortcut selecciona la combinacin de teclas que se podrn usar para activar la opcin de men correspondiente. i) Repite los pasos para crear cada opcin 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 cdigo para las opciones son: a) Opcin Nuevo, el cual servir para crear un nuevo registro en la tabla, el cdigo es el siguiente: Private Sub nuevo_Click () Data1.Recordset.AddNew End Sub P.D. Esta opcin debe presionarse antes de dar de alta un nuevo registro en la base de datos. b) Opcin Guardar, el cual servir para guardar un nuevo registro en la tabla, el cdigo 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 opcin debe presionarse una vez que se haya completado la informacin del registro. c) Opcin Buscar, el cual servir para buscar un registro en la tabla, el cdigo es el siguiente: Private Sub buscar_Click() Dim m As Long m = Val(InputBox("Introduce la Matrcula que Buscas")) Data1.Recordset.FindFirst "matricula=" & m If Data1.Recordset.NoMatch Then MsgBox "La Matrcula Nmero: " & m & " No est en la Base de Datos", vbExclamation, "Bsquedas de Matrcula" End If End Sub LIC. CLAUDIA CARRILLO G.-INFORMATICA17 de 85

Cmo crear una base de datos en Access con Visual Basic


Nota: aqu declaramos una variable (m) que representar el nmero del registro (matricula) que estemos buscando. Es de vital importancia de que te asegures de que en la lnea subrayada la palabra Matrcula est escrita exactamente como llamaste el campo matricula al crear la tabla. d) Opcin Eliminar, el cual servir para eliminar un registro de la tabla, el cdigo es el siguiente: Private Sub Eliminar_Click() If MsgBox("Quieres Eliminar la Matrcula Nmero: " & Text1 & "?", 16 + 4) = 6 Then Data1.Recordset.Delete Data1.Refresh Text1.SetFocus MsgBox "Se Elimin la Matrcula", vbCritical, "Aviso Importante" Else MsgBox "No se Elimin la Matrcula Nmero: " & Text1, vbExclamation, "Aviso Importante" End If End Sub

Ahora corre tu programa con la tecla F5 dirgete al formulario y ahora podrs agregar, guardar, buscar y eliminar registros de la tabla Alumnos de la base de datos de Access mediante Visual Basic.

LIC. CLAUDIA CARRILLO G.-INFORMATICA18 de 85

Cmo 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 botn 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 ttulo.

LIC. CLAUDIA CARRILLO G.-INFORMATICA19 de 85

Cmo crear una base de datos en Access con Visual Basic


Nota: En caso de que no se halle disponible la opcin Agregar Data Environment en el men Proyecto, hay que activarla desde Proyecto, Componentes, Diseadores y hacer clic en Data Environment y otro clic en Aceptar.

LIC. CLAUDIA CARRILLO G.-INFORMATICA20 de 85

Cmo crear una base de datos en Access con Visual Basic


d) En la ventana aparece un pequeo icono de un reporte al cual puedes cambiarle el nombre fcilmente seleccionndolo y modificando su propiedad (Name) por otro como Reportes, etc.

e) Ms abajo se puede ver otro objeto, un cilindro -el cual representa a la base de datos- con una clavija elctrica llamado Connection1 al cual tambin puedes cambiarle el nombre modificando su propiedad (Name) por otro como Alumnos, Maestros, etc.

LIC. CLAUDIA CARRILLO G.-INFORMATICA21 de 85

Cmo crear una base de datos en Access con Visual Basic


f) Ahora haz clic con el botn derecho del ratn sobre la Connection1 (ahora llamada Alumnos) y haz clic en Propiedades g) Y aparecer la caja Propiedades de vnculo de datos, haz clic en la opcin Conexin.

LIC. CLAUDIA CARRILLO G.-INFORMATICA22 de 85

Cmo crear una base de datos en Access con Visual Basic


h) Haz clic en: Usar la cadena de conexin y haz clic en Generar

LIC. CLAUDIA CARRILLO G.-INFORMATICA23 de 85

Cmo crear una base de datos en Access con Visual Basic


i) Y aparecer la caja Seleccionar origen de datos, haz clic en la opcin 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.

LIC. CLAUDIA CARRILLO G.-INFORMATICA24 de 85

Cmo crear una base de datos en Access con Visual Basic


k) Y aparecer la caja Conexin, haz clic en el botn 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, seleccinala y haz clic en Aceptar.

m) Enseguida se vuelve a mostrar la caja Conexin, haz clic nuevamente en Aceptar.

LIC. CLAUDIA CARRILLO G.-INFORMATICA25 de 85

Cmo crear una base de datos en Access con Visual Basic


n) Y se mostrar la caja Propiedades de vnculo de datos, mostrando en la caja de texto Cadena de conexin bajo la opcin Usar la cadena de conexin la ruta de la base de datos que hemos conectado, para finalizar la conexin haz clic en Aceptar.

o) Y volveremos al Entorno de Datos.

Ya creamos la conexin de los reportes con la base de datos, ahora vamos a crear un comando para el reporte.

LIC. CLAUDIA CARRILLO G.-INFORMATICA26 de 85

Cmo crear una base de datos en Access con Visual Basic


Creando un comando
a) Haz clic con el botn derecho del ratn sobre la conexin (Alumnos) que creamos previamente y haz clic en Agregar comando.

LIC. CLAUDIA CARRILLO G.-INFORMATICA27 de 85

Cmo 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 identificacin llamaremos el Command1 Repalumnos, ya que nos ser til para identificar el reporte de alumnos.

LIC. CLAUDIA CARRILLO G.-INFORMATICA28 de 85

Cmo crear una base de datos en Access con Visual Basic


Creando las propiedades del reporte
a) Haz clic con el botn derecho del ratn 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 Conexin que es Alumnos.

LIC. CLAUDIA CARRILLO G.-INFORMATICA29 de 85

Cmo crear una base de datos en Access con Visual Basic


b) En la seccin 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 opcin 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 slo haz clic en Aceptar.

LIC. CLAUDIA CARRILLO G.-INFORMATICA30 de 85

Cmo crear una base de datos en Access con Visual Basic


e) Y se mostrar un pequeo cuadro con un signo de ms en su interior, al lado izquierdo del comando Repalumnos, haz clic ah y podrs ver los campos de la tabla Alumnos que seleccionaste previamente, todo indica que nuestra conexin se realiz exitosamente.

Ya puedes cerrar el Entorno de Datos (Data Environment) para crear ahora la estructura del reporte.

LIC. CLAUDIA CARRILLO G.-INFORMATICA31 de 85

Cmo crear una base de datos en Access con Visual Basic


Creando la estructura del reporte
a) En Visual Basic haz clic en el botn 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 opcin Agregar Data Report en el men Proyecto, hay que activarla desde Proyecto, Componentes, Diseadores y hacer clic en Data Report y otro clic en Aceptar.

LIC. CLAUDIA CARRILLO G.-INFORMATICA32 de 85

Cmo 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 (Seccin4) y modifica su propiedad Caption con el ttulo que tendr el reporte. Nota: puedes ajustar la altura de las diferentes secciones del Data Report mediante colocar el apuntador del ratn en el limite inferior de cada seccin, presionar el botn izquierdo del ratn y sencillamente moverlo hacia arriba o hacia abajo segn sea el caso.

b) Ahora haz clic en RptLabel y coloca etiquetas con los ttulos de los encabezados de la tabla en Encabezado de pgina (Seccin2) modificando sus propiedades Caption, Font, ForeColor, etc. a tu gusto. c) Ahora haz clic en RptTextBox y coloca cajas de texto en Detalle (Seccin1). d) Al terminar de colocar las cajas de texto que muestran el texto: No enlazado, haz clic en cualquier parte vaca 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.

LIC. CLAUDIA CARRILLO G.-INFORMATICA33 de 85

Cmo 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 ms o menos as.

LIC. CLAUDIA CARRILLO G.-INFORMATICA34 de 85

Cmo 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 botn derecho del ratn en el formulario y haz clic en Editor de mens b) Crea el men Reportes con la opcin Alumnos.

LIC. CLAUDIA CARRILLO G.-INFORMATICA35 de 85

Cmo crear una base de datos en Access con Visual Basic


c) Para que se vea as

LIC. CLAUDIA CARRILLO G.-INFORMATICA36 de 85

Cmo crear una base de datos en Access con Visual Basic


Conectando el men con el reporte
Ahora vamos a conectar la opcin del men Reportes con el reporte que creamos previamente a) Haz clic en Reportes, Alumnos y escribe el siguiente cdigo: Private Sub reportedealumnos_Click() DataReport1.Show End Sub b) Ejecuta el programa y haz clic en la opcin 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 segn tus necesidades particulares. Puedes crear una base de datos con varias tablas, diferentes formularios y diferentes reportes segn prefieras, sinceramente espero que haya sido de tu inters el ejercicio y sirva para que te adentres en el mundo de la programacin y las bases de datos.

LIC. CLAUDIA CARRILLO G.-INFORMATICA37 de 85

Cmo 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, tambin se crear la opcin 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 registrarn los usuarios que quieran entrar el programa.

Creando una pantalla de inicio


a) Haz clic en Proyecto, Agregar formulario. b) En la caja de dilogo Agregar formulario, opcin Nuevo, selecciona el icono Pantalla de inicio y haz clic en Abrir. Para el propsito del ejercicio slo conserva dos etiquetas que nos sern de utilidad as como la grfica, selecciona el resto de las etiquetas y presiona el botn Suprimir para eliminarlas. Modifica las etiquetas, cambia la grfica por la que prefieras, y agrega un reloj a la pantalla de inicio para que se vea ms 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.

LIC. CLAUDIA CARRILLO G.-INFORMATICA38 de 85

Cmo crear una base de datos en Access con Visual Basic


b) Haz doble clic en el reloj y escribe el siguiente cdigo: 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 dilogo, Propiedades del proyecto. d) En la opcin 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 ms o menos como se ve abajo.

a) El cdigo del botn Registrarse es: Private Sub Command1_Click() Bienvenida.Hide Registro.Show End Sub Cuya funcin es la de ocultar el formulario de Bienvenida y mostrar el formulario de Registro. LIC. CLAUDIA CARRILLO G.-INFORMATICA39 de 85

Cmo crear una base de datos en Access con Visual Basic


b) El cdigo del botn Entrar es: Private Sub Command2_Click() Bienvenida.Hide Entrada.Show End Sub Cuya funcin es la de ocultar el formulario de Bienvenida y mostrar el formulario de Entrada.

c) El cdigo del botn Cancelar es:


Private Sub Command3_Click() Unload Me End End Sub Cuya funcin 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 ms o menos como se ve abajo.

LIC. CLAUDIA CARRILLO G.-INFORMATICA40 de 85

Cmo crear una base de datos en Access con Visual Basic


a) El cdigo del botn 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 & ", Cmo 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, "Atencin, Usuario No Autorizado!!!") If (mensaje = 1) Then Entrada.Show Text1 = "" Text2 = "" Else End End If End Sub Cuya funcin es asegurarse de que el nombre de usuario y contrasea 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.

LIC. CLAUDIA CARRILLO G.-INFORMATICA41 de 85

Cmo crear una base de datos en Access con Visual Basic


b) El cdigo del botn Salir del programa es: Private Sub Command2_Click() End End Sub Cuya funcin es la de cerrar el programa. c) Escribe el siguiente cdigo en el evento Activate del formulario Private Sub Form_Activate() Text1.SetFocus End Sub Cuya funcin es la de colocar el cursor en la caja de texto 1 al cargar el formulario d) Escribe el siguiente cdigo 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 funcin 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 ms o menos como se ve abajo.

LIC. CLAUDIA CARRILLO G.-INFORMATICA42 de 85

Cmo crear una base de datos en Access con Visual Basic


a) El cdigo del botn 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 funcin es la de guardar en la tabla de usuarios al nuevo usuario. b) El cdigo del botn Salir del programa es: Private Sub Command2_Click() End End Sub Cuya funcin es la de cerrar el programa. c) Escribe el siguiente cdigo en el evento Activate del formulario Private Sub Form_Activate() Data1.Recordset.AddNew End Sub Cuya funcin es la de preparar el agregar al usuario nuevo. d) Escribe el siguiente cdigo 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 funcin 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 captulo: Creacin de las tablas de la base de datos, detallada pginas arriba.

LIC. CLAUDIA CARRILLO G.-INFORMATICA43 de 85

Cmo 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 tamao 50, tal como se ve en la caja Estructura de la tabla mostrada abajo.

LIC. CLAUDIA CARRILLO G.-INFORMATICA44 de 85

Cmo 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 recin creada y siguiendo el procedimiento pginas mostrado arriba, registra un nico usuario, preferentemente t nombre y como contrasea nuevamente t nombre, esto por motivos de prueba.

LIC. CLAUDIA CARRILLO G.-INFORMATICA45 de 85

Cmo 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 botn Entrar, debe mostrarse la pantalla de Entrada y si se presiona el botn 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 electrnicos recibidos de tanta gente, como siempre estoy a la orden para sugerencias y recomendaciones.

LIC. CLAUDIA CARRILLO G.-INFORMATICA46 de 85

Cmo crear una base de datos en Access con Visual Basic


En esta tercera parte del ejercicio, vamos a realizar algunas bsquedas y consultas, as como ordenar los datos en forma ascendente y descendente, tambin moveremos registros del MSFlexGrid a otros objetos, de tal manera que vamos a crear:

a) b) c) d) e)

Una pantalla para realizar bsquedas por: Matrcula, Carrera y Turno. Una pantalla para efectuar bsquedas de Matrcula 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 propsito 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 bsqueda antes mencionadas, por cuestiones de fcil identificacin las llam como se ven en la pantalla. El formulario contiene al medio un objeto Picture conteniendo una ilustracin.

LIC. CLAUDIA CARRILLO G.-INFORMATICA47 de 85

Cmo 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 dilogo Componentes, Controles, selecciona la opcin 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 botn derecho del ratn en el objeto StatusBar y haz clic en Propiedades.

LIC. CLAUDIA CARRILLO G.-INFORMATICA48 de 85

Cmo crear una base de datos en Access con Visual Basic


Para que se muestre la caja de dilogo Pginas de propiedades.

En la caja de dilogo Pginas de propiedades, opcin Paneles, haz clic en el botn 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 activacin de la tecla de Maysculas. Podrs ver los paneles insertados mediante hacer clic en las flechas izquierda y derecha de la opcin Index. Los paneles deben mostrar en la opcin Style: 5 sbrTime, 6 sbrDate y 1 sbrCaps respectivamente para que se vea como la ilustracin del formulario opciones mostrada arriba. Puedes experimentar con las otras opciones a tu gusto.

LIC. CLAUDIA CARRILLO G.-INFORMATICA49 de 85

Cmo crear una base de datos en Access con Visual Basic


Creando la pantalla de Bsquedas1
Crea un formulario, con un frame, tres botones de opcin, 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 ms o menos como se ve abajo.

El formulario debe tener un men con la opcin Volver a Opciones como se muestra abajo.

LIC. CLAUDIA CARRILLO G.-INFORMATICA50 de 85

Cmo crear una base de datos en Access con Visual Basic


a) El cdigo del formulario Bsquedas1 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 cdigo del men Volver a Opciones es: Private Sub volveraopciones_Click() Busquedas1.Hide Opciones.Show End Sub c) El cdigo de los botones de opcin es: Private Sub Option1_Click() If Option1 = True Then Label2.Visible = True Label2.Caption = "Introduce la Matrcula 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

LIC. CLAUDIA CARRILLO G.-INFORMATICA51 de 85

Cmo 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 cdigo del botn 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 Matrcula: " & Val(Text1) & ", No est en la Base de Datos", vbExclamation, "Por Favor Revisa el Nmero de la Matrcula!" 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

LIC. CLAUDIA CARRILLO G.-INFORMATICA52 de 85

Cmo 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 cdigo del botn Ver Todos los Registros es: Private Sub Command2_Click() Text1 = "" Data1.RecordSource = "alumnos" Data1.Refresh Label1 = "Total de Registros de la bsqueda: " & (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, tambin puedes seleccionar colores contrastantes em las propiedades BackColorSel y ForeColorSel. h) Las etiquetas1 y 2, deben estar vacas y con su propiedad AutoSize a True, una de ellas colcala 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 botn de opcin deseado. Al introducir la informacin requerida y hacer clic en el botn Buscar se mostrar el o los registros y la otra etiqueta indicando el nmero de registros hallados, al presionar el botn Ver Todos los Registros se mostrarn todos los registros de la tabla Alumnos. El Botn cerrar del formulario se deshabilita para forzar el uso del Men.

LIC. CLAUDIA CARRILLO G.-INFORMATICA53 de 85

Cmo crear una base de datos en Access con Visual Basic


Creando la pantalla de Bsquedas2
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 ms o menos como se ve abajo.

Al igual que el ejercicio anterior, el formulario debe tener un men con la opcin Volver a Opciones.

a) El cdigo del formulario Bsquedas2 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 cdigo del men Volver a Opciones es: Private Sub volveraopciones_Click() Busquedas2.Hide Opciones.Show End Sub

LIC. CLAUDIA CARRILLO G.-INFORMATICA54 de 85

Cmo crear una base de datos en Access con Visual Basic


c) El cdigo 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 cdigo del botn 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 Matrcula: " & Val(Combo1) & ", No est en la Base de Datos" + vbCrLf + "Haz Clic en el botn 'Ver Todos'" + vbCrLf + "Para Seleccionar un Nmero de Matrcula", vbExclamation, "Por Favor Selecciona un Nmero de Matrcula!" End If End Sub e) El cdigo del botn 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, tambin puedes seleccionar colores contrastantes em las propiedades BackColorSel y ForeColorSel. h) ComboBox su propiedad Text cambiala a Matrculas. Al iniciar el formulario, el usuario seleccionar de la caja de combo la matrcula que busca, y al presionar el botn Buscar, la matrcula deseada se le mostrar. Al presionar el botn Ver Todos, se mostrarn todos los registros de la tabla Alumnos. El Botn cerrar del formulario se deshabilita para forzar el uso del Men.

LIC. CLAUDIA CARRILLO G.-INFORMATICA55 de 85

Cmo crear una base de datos en Access con Visual Basic


Creando la pantalla de Bsquedas3
Crea un formulario, con una etiqueta, un Frame, cuatro botones de opcin, dos botones, un MSFlexGrid y un control Data, cuya propiedad Visible debe ser cambiada a False, para que se vea ms o menos como se ve abajo.

Al igual que el ejercicio anterior, el formulario debe tener un men con la opcin Volver a Opciones.

a) El cdigo del formulario Bsquedas3 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 cdigo del men Volver a Opciones es: Private Sub volver_Click() Busquedas3.Hide Opciones.Show End Sub LIC. CLAUDIA CARRILLO G.-INFORMATICA56 de 85

Cmo crear una base de datos en Access con Visual Basic


c) El cdigo del botn 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 cdigo del botn 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, tambin puedes seleccionar colores contrastantes em las propiedades BackColorSel y ForeColorSel. Al iniciar el formulario, el usuario seleccionar el botn de opcin que necesite para elegir el campo necesario y presionar el botn Ascendente o Descendente para elegir el orden de los datos de la tabla Alumnos. El Botn cerrar del formulario se deshabilita para forzar el uso del Men. LIC. CLAUDIA CARRILLO G.-INFORMATICA57 de 85

Cmo crear una base de datos en Access con Visual Basic


Creando la pantalla de Bsquedas4
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 ms o menos como se ve abajo.

Al igual que el ejercicio anterior, el formulario debe tener un men con la opcin Volver a Opciones.

a) El cdigo del formulario Bsquedas4 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 cdigo del men Volver a Opciones es: Private Sub volver_Click() Busquedas4.Hide Opciones.Show End Sub LIC. CLAUDIA CARRILLO G.-INFORMATICA58 de 85

Cmo crear una base de datos en Access con Visual Basic


c) El cdigo 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, tambin 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 Botn cerrar del formulario se deshabilita para forzar el uso del Men.

LIC. CLAUDIA CARRILLO G.-INFORMATICA59 de 85

Cmo crear una base de datos en Access con Visual Basic


Creando la pantalla de Bsquedas5
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 ms o menos como se ve abajo.

Al igual que el ejercicio anterior, el formulario debe tener un men con la opcin Volver a Opciones.

a) El cdigo del formulario Bsquedas5 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 cdigo del men Volver a Opciones es: Private Sub volver_Click() Busquedas5.Hide Opciones.Show End Sub LIC. CLAUDIA CARRILLO G.-INFORMATICA60 de 85

Cmo crear una base de datos en Access con Visual Basic


c) El cdigo 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, tambin 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, guardarn ms de un registro a la vez. El Botn cerrar del formulario se deshabilita para forzar el uso del Men.

LIC. CLAUDIA CARRILLO G.-INFORMATICA61 de 85

Cmo crear una base de datos en Access con Visual Basic


Creando la pantalla de Bsquedas6
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 ms o menos como se ve abajo.

Al igual que el ejercicio anterior, el formulario debe tener un men con la opcin Volver a Opciones. a) El cdigo del formulario Bsquedas6 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 cdigo del men Volver a Opciones es: Private Sub volver_Click() Busquedas6.Hide Opciones.Show End Sub LIC. CLAUDIA CARRILLO G.-INFORMATICA62 de 85

Cmo crear una base de datos en Access con Visual Basic


c) El cdigo 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 cdigo 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 cdigo del botn 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 LIC. CLAUDIA CARRILLO G.-INFORMATICA63 de 85

Cmo crear una base de datos en Access con Visual Basic


f) El cdigo del botn 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, tambin 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 cdigos 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 servirn para hacer la bsqueda respectiva, al presionar el botn Buscar, los registros se mostrarn en el MSFlexGrid y la etiqueta3 mostrar la cantidad de registros mostrados. El Botn cerrar del formulario se deshabilita para forzar el uso del Men.

LIC. CLAUDIA CARRILLO G.-INFORMATICA64 de 85

Cmo crear una base de datos en Access con Visual Basic


Creando la pantalla de Bsquedas7
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 ms o menos como se ve abajo.

Al igual que el ejercicio anterior, el formulario debe tener un men con la opcin Volver a Opciones. a) El cdigo del formulario Bsquedas7 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

LIC. CLAUDIA CARRILLO G.-INFORMATICA65 de 85

Cmo 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 cdigo del men Volver a Opciones es: Private Sub volver_Click() Busquedas7.Hide Opciones.Show End Sub c) El cdigo 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 LIC. CLAUDIA CARRILLO G.-INFORMATICA66 de 85

Cmo 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 cdigo del botn 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 botn: '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 botn: '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 cdigo del botn 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

LIC. CLAUDIA CARRILLO G.-INFORMATICA67 de 85

Cmo 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, tambin 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 bsqueda y del combo2 el registro que servir para hacer la bsqueda, al presionar el botn Buscar, los registros se mostrarn en el MSFlexGrid y la etiqueta4 mostrar la cantidad de registros mostrados. El Botn 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 botn Buscar y en su propiedad ToolTipText escribe: 3. Realiza la Bsqueda Selecciona el botn Todos los Registros y en su propiedad ToolTipText escribe: 4. Presiona esta botn antes de cambiar de campo.

LIC. CLAUDIA CARRILLO G.-INFORMATICA68 de 85

Cmo crear una base de datos en Access con Visual Basic


Creando la pantalla de Bsquedas8
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 ms o menos como se ve abajo.

Al igual que el ejercicio anterior, el formulario debe tener un men con la opcin Volver a Opciones. a) El cdigo del formulario Bsquedas8 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 LIC. CLAUDIA CARRILLO G.-INFORMATICA69 de 85

Cmo crear una base de datos en Access con Visual Basic


b) El cdigo del men Volver a Opciones es: Private Sub volver_Click() Busquedas8.Hide Opciones.Show End Sub c) El cdigo del botn 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 bsqueda: " & (MSFlexGrid1.Rows) - 1 & "" If Data1.Recordset.RecordCount = 0 Then MsgBox "No Hay Registros con estos Parmetros" + vbCrLf + "Por Favor Revisa tus Datos", vbInformation, "Aviso Importante!" End If Text1 = "" Text2 = "" Text1.SetFocus End Sub d) El cdigo del botn Todos los Registros es: Private Sub Command2_Click() Data1.RecordSource = "alumnos" Data1.Refresh Label4 = "Total de Registros de la bsqueda: " & (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, tambin 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 bsquedas por rango del campo Matrculas, al presionar el botn Buscar, los registros se mostrarn en el MSFlexGrid y la etiqueta4 mostrar la cantidad de registros mostrados. El Botn cerrar del formulario se deshabilita para forzar el uso del Men.

LIC. CLAUDIA CARRILLO G.-INFORMATICA70 de 85

Cmo crear una base de datos en Access con Visual Basic


Creando la pantalla de Bsquedas9
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 ms o menos como se ve abajo.

Al igual que el ejercicio anterior, el formulario debe tener un men con la opcin Volver a Opciones. a) El cdigo del formulario Bsquedas9 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

LIC. CLAUDIA CARRILLO G.-INFORMATICA71 de 85

Cmo crear una base de datos en Access con Visual Basic


b) El cdigo del men Volver a Opciones es: Private Sub volver_Click() Busquedas9.Hide Opciones.Show End Sub c) El cdigo 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

LIC. CLAUDIA CARRILLO G.-INFORMATICA72 de 85

Cmo crear una base de datos en Access con Visual Basic


d) El cdigo del botn 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 Bsqueda", 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 cdigo del botn 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, tambin 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 bsquedas por dos campos usando una sola caja de combo, em la cual se mostrarn los registros de los campos Carrera y Turno, al presionar el botn Buscar, los registros se mostrarn en el MSFlexGrid y la etiqueta2 mostrar la cantidad de registros mostrados. El Botn cerrar del formulario se deshabilita para forzar el uso del Men.

LIC. CLAUDIA CARRILLO G.-INFORMATICA73 de 85

Cmo crear una base de datos en Access con Visual Basic


Creando la pantalla de Bsquedas10
Crea un formulario, con dos etiquetas, un botn, un MSFlexGrid y un control Data, cuya propiedad Visible debe ser cambiada a False, para que se vea ms o menos como se ve abajo.

Al igual que el ejercicio anterior, el formulario debe tener un men con la opcin Volver a Opciones. a) El cdigo del formulario Bsquedas10 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

LIC. CLAUDIA CARRILLO G.-INFORMATICA74 de 85

Cmo crear una base de datos en Access con Visual Basic


b) El cdigo del men Volver a Opciones es: Private Sub volveraopciones_Click() Busquedas10.Hide Opciones.Show End Sub c) El cdigo del botn 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 cdigo 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 formarn 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 botn S; un botn y un control Data, cuya propiedad Visible debe ser cambiada a False, para que se vea ms o menos como se ve abajo.

e) El cdigo del formulario Modificar es: En General declaramos la variable: Private a(4) As String

LIC. CLAUDIA CARRILLO G.-INFORMATICA75 de 85

Cmo 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 cdigo del botn 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 Bsquedas10, el usuario podr hacer doble clic en cualquier registro para editarlo de forma rpida en el formulario Modificar. Cuando de lleve a cabo la edicin del registro, presionando el botn Todos los Registros, podremos ver el registro actualizado a nuestra conveniencia en el MSFlexGrid y la etiqueta2 mostrar la cantidad de registros mostrados. El Botn cerrar del formulario se deshabilita para forzar el uso del Men.

LIC. CLAUDIA CARRILLO G.-INFORMATICA76 de 85

Cmo crear una base de datos en Access con Visual Basic


En esta parte del ejercicio vamos a realizar una bsqueda para contar la cantidad de registros que satisfagan cierta condicin, por ejemplo: cuntos alumnos hay que estn inscritos en cierta carrera, turno, etc. Para lo cual crea un formulario con cuatro etiquetas, cuatro cajas de texto, dos MSFlexGrid, un combobox, un botn y dos controles Data, cuya propiedad Visible debe ser cambiada a False, para que se vea ms o menos como se ve abajo.

Al igual que el ejercicio anterior, el formulario debe tener un men con la opcin Volver a Opciones. a) El cdigo 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 cdigo del botn Contar Carreras es: Private Sub Command1_Click() Data2.RecordSource = "select count(carrera) as carreras from alumnos where carrera = '" & Combo1 & "'" Data2.Refresh End Sub LIC. CLAUDIA CARRILLO G.-INFORMATICA77 de 85

Cmo 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 ms te agrade. Al iniciar el formulario Bsquedas11, el usuario podr seleccionar una carrera de la caja de combo y al presionar el botn Contar Carreras, el MsFlexGrid2 mostrar la cantidad de registros que satisfagan la condicin dada. El Botn cerrar del formulario se deshabilita para forzar el uso del Men.

LIC. CLAUDIA CARRILLO G.-INFORMATICA78 de 85

Cmo 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 matrculas. Para este ejercicio crea un formulario con cuatro etiquetas, cuatro cajas de texto, dos MSFlexGrid, un botn y dos controles Data, cuya propiedad Visible debe ser cambiada a False, para que se vea ms o menos como se ve abajo.

Al igual que el ejercicio anterior, el formulario debe tener un men con la opcin Volver a Opciones. a) El cdigo del botn La Suma de Matrculas es: Private Sub Command1_Click() Data2.RecordSource = "select sum(matricula) as suma from alumnos" Data2.Refresh End Sub

LIC. CLAUDIA CARRILLO G.-INFORMATICA79 de 85

Cmo crear una base de datos en Access con Visual Basic


Enseguida veremos como emplear el control DTPicker para realizar bsquedas por fechas, para lo cual, en la tabla alumnos hay que agregar um campo que se llame fecha_inscripcin, 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 ms o menos como se ve abajo.

Al igual que el ejercicio anterior, el formulario debe tener un men con la opcin Volver a Opciones. a) El cdigo del botn Bsqueda 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 bsqueda: " & (MSFlexGrid1.Rows) - 1 & "" If Data1.Recordset.RecordCount = 0 Then MsgBox "No Hay Registros con estos Parmetros" + vbCrLf + "Por Favor Revisa tus Datos", vbInformation, "Aviso Importante!" LIC. CLAUDIA CARRILLO G.-INFORMATICA80 de 85

Cmo crear una base de datos en Access con Visual Basic


End If End Sub b) El cdigo del botn Ver todos los Registros es: Private Sub Command2_Click() Data1.RecordSource = "alumnos" Data1.Refresh MSFlexGrid1.Refresh End Sub c) El cdigo del formulario Bsquedas13 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 ms te agrade. Al iniciar el formulario Bsquedas13, el usuario podr seleccionar fechas de los objetos DTPicker para realizar bsquedas al presionar el botn Bsquedas por Fecha, el MsFlexGrid1 mostrar la cantidad de registros que satisfagan la condicin dada.

LIC. CLAUDIA CARRILLO G.-INFORMATICA81 de 85

Cmo 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 cuestin de sencillez en la explicacin usaremos ms 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 ms o menos como se ve abajo.

Al igual que el ejercicio anterior, el formulario debe tener un men con la opcin Volver a Opciones. a) El cdigo del formulario Impresin1 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

LIC. CLAUDIA CARRILLO G.-INFORMATICA82 de 85

Cmo 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 cdigo del botn Ocultar Registros es: Private Sub Command1_Click() MSFlexGrid1.Clear End Sub c) El cdigo del botn 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 cdigo del botn 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 ms te agrade. Al iniciar el formulario Impresin1, el usuario podr ver u ocultar los registros mostrados en el MSFlexGrid, y podr imprimir los registros que haya seleccionado del MSFlexGrid. El Botn cerrar del formulario se deshabilita para forzar el uso del Men.

LIC. CLAUDIA CARRILLO G.-INFORMATICA83 de 85

Cmo crear una base de datos en Access con Visual Basic


Creando la pantalla de Impresin2
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 ms o menos como se ve abajo.

a) El cdigo del botn Imprimir Formulario es: Private Sub Command3_Click() Impresion2.PrintForm Printer.EndDoc End Sub

LIC. CLAUDIA CARRILLO G.-INFORMATICA84 de 85

Cmo crear una base de datos en Access con Visual Basic


Creando la pantalla de Impresin3
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 ms o menos como se ve abajo.

a) El cdigo del botn Imprimir Registros es: Private Sub Command3_Click() Printer.PaintPicture MSFlexGrid1.Picture, 0, 0 Printer.EndDoc End Sub

LIC. CLAUDIA CARRILLO G.-INFORMATICA85 de 85

Potrebbero piacerti anche