La siguiente aplicación consiste en la gestión de un parking de automóviles.

En esta captura de pantalla se puede ver la ventana principal del programa cuando se inicializa.

parking_portada.jpg

El código de FormParking:

Option Explicit
Private n As Integer
Private Anterior As Integer: Private Actual As Integer

Private Sub BotonContabilidad_Click()
Call AbrirFormContabilidad
End Sub

Private Sub BotonEntradas_Click()
Call AbrirFormEntrada
End Sub

Private Sub BotonImagenSalir_Click() ‘Boton Imagen para salir del programa
End
End Sub

Private Sub BotonSalidas_Click()
Call AbrirFormSalida

End Sub

Private Sub Form_Load()
Dim i As Integer
For i = 0 To 24
Picture1(i).Visible = False

Next
Picture1(0).Visible = True

End Sub
Private Sub Timer1_Timer()
LabelFecha = Format(Now(), (“DD/MM/YY”))
LabelHora = Format(Now(), (“HH:MM:SS”))
End Sub
Private Sub Timer2_Timer() ‘Para visualizar Icono: Car

If n < 24 Then
Picture1(Anterior).Visible = False

Actual = Anterior + 1
Picture1(Actual).Visible = True

Anterior = Actual
n = n + 1

Else

Picture1(Actual).Visible = False
Actual = Anterior – 24
Picture1(Actual).Visible = True
Anterior = Actual
n = 0

End If

End Sub

Otras capturas de pantalla y su correspondiente código:

parking_entrada.jpg

El código de FormEntrada:

Option Explicit

Private Sub BotonGuardar_Click()

‘Ver si se han introducido datos en TextBox(0):Matricula
If TextEntradas(0).Text = “” Then
MsgBox “Introduce Matrícula”, vbInformation, “”
Else
Call GuardarEntrada
End If
End Sub

Private Sub BotonVolver_Click()
Call Volver
End Sub

parking_salida.jpg

El código de FormSalida:

Option Explicit

Private Sub BotonGuardar_Click()
‘Ver si se han intrioducido datos en TextBox(0):Matricula
If TextSalidas(0).Text = “” Then
MsgBox “Introduce Matrícula”, vbInformation, “ATENCION”
Else
Call GuardarSalida
End If
End Sub

Private Sub BotonVolver_Click()
Call Volver
End Sub

parking_contabilidad.jpg

El código de FormContabilidad:

Option Explicit

Private Sub BotonCalcular_Click()
Call ImporteTotal
End Sub

Private Sub BotonVolver_Click()
Call Volver
End Sub

Private Sub Form_Load()
Combo1(1).ListIndex = 0
Combo1(2).ListIndex = 0
End Sub

CODIGO DE LOS MODULOS:

ModuleGeneral:

Option Explicit
‘Public ImporteHora As Single
Public BDParking As Database
Public Registro As Recordset
Public Formula As Single
Public ImporteHora As Single
Sub main()
‘Se le asigna valor a ImporteHora
‘ImporteHora = FormParking.TextImporteHora.Text

‘Declaración de la Base de Datos Parking
Set BDParking = Workspaces(0).OpenDatabase(CurDir & “\Parking97.mdb”)
‘(“a:\parking\parking97”)

‘Abrir pantalla principal:Parking
Load FormParking
FormParking.Show
End Sub
Sub Volver()
Unload FormEntrada: Unload FormSalida: Unload FormContabilidad
FormParking.Show
End Sub

ModuleEntrada:

Option Explicit
Private MesTotal As Integer
Private AñoTotal As Integer
Private SQL As String
Private Suma As Single
Private Historico As Recordset
‘Private historico As Recordset
Sub AbrirFormContabilidad()
Unload FormParking
Load FormContabilidad
FormContabilidad.Show
End Sub
Sub ImporteTotal()
MesTotal = FormContabilidad.Combo1(1).ListIndex + 1 ‘ListIndex devuelve la posición de la lista del comboList
AñoTotal = FormContabilidad.Combo1(2).Text
‘Seleccionar Mes y año a buscar en la Tabla TablaHistoricos
SQL = “Select Factura from TablaHistoricos where (Month([FechaSalida])=” & MesTotal & ” ) and Year([FechaSalida])=” & AñoTotal
Set Historico = BDParking.OpenRecordset(SQL)
‘Se va ha sumar los campos de factura
Suma = 0

While Not Historico.EOF ‘Mientras no se llegue al final de la tabla
Suma = Suma + Historico!Factura
Historico.MoveNext
Wend
FormContabilidad.Text1.Text = Suma
End Sub

ModuleSalida:

Option Explicit
Private MesTotal As Integer
Private AñoTotal As Integer
Private SQL As String
Private Suma As Single
Private Historico As Recordset
‘Private historico As Recordset
Sub AbrirFormContabilidad()
Unload FormParking
Load FormContabilidad
FormContabilidad.Show
End Sub
Sub ImporteTotal()
MesTotal = FormContabilidad.Combo1(1).ListIndex + 1 ‘ListIndex devuelve la posición de la lista del comboList
AñoTotal = FormContabilidad.Combo1(2).Text
‘Seleccionar Mes y año a buscar en la Tabla TablaHistoricos
SQL = “Select Factura from TablaHistoricos where (Month([FechaSalida])=” & MesTotal & ” ) and Year([FechaSalida])=” & AñoTotal
Set Historico = BDParking.OpenRecordset(SQL)
‘Se va ha sumar los campos de factura
Suma = 0

While Not Historico.EOF ‘Mientras no se llegue al final de la tabla
Suma = Suma + Historico!Factura
Historico.MoveNext
Wend
FormContabilidad.Text1.Text = Suma
End Sub

ModuleContabilidad:

Option Explicit
Private MesTotal As Integer
Private AñoTotal As Integer
Private SQL As String
Private Suma As Single
Private Historico As Recordset
‘Private historico As Recordset
Sub AbrirFormContabilidad()
Unload FormParking
Load FormContabilidad
FormContabilidad.Show
End Sub
Sub ImporteTotal()
MesTotal = FormContabilidad.Combo1(1).ListIndex + 1 ‘ListIndex devuelve la posición de la lista del comboList
AñoTotal = FormContabilidad.Combo1(2).Text
‘Seleccionar Mes y año a buscar en la Tabla TablaHistoricos
SQL = “Select Factura from TablaHistoricos where (Month([FechaSalida])=” & MesTotal & ” ) and Year([FechaSalida])=” & AñoTotal
Set Historico = BDParking.OpenRecordset(SQL)
‘Se va ha sumar los campos de factura
Suma = 0

While Not Historico.EOF ‘Mientras no se llegue al final de la tabla
Suma = Suma + Historico!Factura
Historico.MoveNext
Wend
FormContabilidad.Text1.Text = Suma
End Sub

Este programa tiene asociado una base de datos llamada Parkin97 que dispone de dos tablas, una llamada TablaRegistros y otra TablaHistoricos.

basedatos.jpg