Buscar datos en Access 2003 con dos variables, en un formulario.

Estoy trabajando en una aplicación Access 2003, consulta como hago para hacer búsqueda en un formulario, con un Cuadro Combinado y un Cuadro de texto, (ejemplo: Departamento y año), y esta información la muestre en un formulario. A la espera de su pronta respuesta.

1 Respuesta

Respuesta
1

Sandro: En el Evento AfterUpdate del ComboBox.
Supuestos:
El Combo tiene el Nombre>> CboDepartamentos, con dos Columnas
Primera >> CódigoDpto Numérico >> CampoTabla: IdDepartamento
Segunda >> NombreDepartamento de Tipo Texto (lógico)

El TextBox tiene el Nombre >> Txt01. De Tipo Númerico >> CampoTabla: AÑO

Declara éstas variables en la cabecera del Módulo del Formulario de Busqueda
Dim FiltroTotal As String, FiltroText As String, FiltroCombo As String

‘Comienza el código asegurando que el TextBox tenga un dato y el Combo también

FiltroTotal = ""

If Not IsNull(Me.Txt01) And Me.Txt01 <> "" Then
FiltroText = "AÑO = “ & Me.Txt01.Value
Else
FiltroText = ""
End If

If Not IsNull(Me.CboDepartamentos) And Me.CboDepartamentos <> "" Then
FiltroCombo = "IdDepartamento = “ & Me.CboDepartamentos.Column(0)
Else
FiltroCombo = ""
End If
‘Construyendo el Filtro
If FiltroText <> "" Then
FiltroTotal = FiltroText
End If

If FiltroCombo <> "" Then
If FiltroTotal <> "" Then
FiltroTotal = FiltroTotal & " AND " & FiltroCombo
Else
FiltroTotal = FiltroCombo
End If
End If
‘Aplicando el Filtro

'Y a partir de aquí, si la variable FiltroTotal no está vacía se la aplicamos al Formulario/SubFormulario
If FiltroTotal <> "" Then
'Asignamos la varaible a la propiedad Filter del Formulario/subformulario
Me.Filter = FiltroTotal ‘ o el SubFormulario
Me.FilterOn = True ‘O el SubFormulario
Else
'Si la variable está en blanco nos indica que no hay seleccionados ningún filtro y por tanto lo desactivamos
Me.FilterOn = False
End If

Y ahora necesitarás un Botón para anular el filtro escrito
En el evento Click
Me.Filter = “”
Me.FilterOn = False
Me.CboDepartamentos = Null
Me.Txt01 = Null
Me. Filter

Ya me comentarás como te fue. Saludos >> Jacinto

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas