Omitir Criterio en base a checkbox MS Access
Hola a todos, resulta que estoy implementando una BD en Access y en un formulario el cual llamo "Formulario_Principal" tengo dos cuadros de textos para poner "Fechas" y una lista desplegable para filtrar por otro parámetro llamado "Ciudad" , este ultimo va acompañado de un Checkbox con la etiqueta "Todos", ya que cuando este se marca desactiva la lista desplegable y ademas debería omitir el criterio.
En el formulario también tengo 10 botones, cada uno me lleva a un formulario distinto, todos ellos usan los mismo parámetros para filtrar, mi pregunta es como hacer que omita el criterio para "Ciudad" cuando el checkbox este marcado.
El caso de fecha lo tengo resuelto, en las consultas auxiliares que luego llevan al formulario de los distintos botones tengo lo siguiente:
FechaI
>=[Formularios]![Formulario_Principal]![txtFIni]
FechaF
<=[Formularios]![Formulario_Principal]![txtFFin]
Ciudad
[Formularios]![Formulario_Principal]![cbCitty]
Donde todos funcionan pero cuando se activa el checkbox "cbCitty" no me muestra ningún registro.
de esta manera tengo configurado el checkbox:
Private Sub Todos_AfterUpdate()
If Me.Todos = True Then
Me.cbCitty = Null
Me.cbCitty.Enabled = False
Else
Me.cbCitty.Enabled = True
End If
End Sub
intente en el criterio de Ciudad poner lo siguiente:
SiInm(EsNulo([Formularios]![Formulario_Principal]![cbCitty]),(*),([Formularios]![Formulario_Principal]![cbCitty]))
SiInm(EsNulo([Formularios]![Formulario_Principal]![cbCitty]),("Lima" o "Santiago" o "BA"),([Formularios]![Formulario_Principal]![cbCitty]))
Luego, Intente que al momento de usar el checkbox le diera un valor al "cbCitty"
Private Sub Todos_AfterUpdate()
If Me.Todos = True Then
Me.cbCitty = "Todos"
Me.cbCitty.Enabled = False
Else
Me.cbCitty.Enabled = True
End If
End Sub
y luego volví a probar:
SiInm(([Formularios]![Formulario_Principal]![cbCitty])="Todos",(*),([Formularios]![Formulario_Principal]![cbCitty]))
SiInm(([Formularios]![Formulario_Principal]![cbCitty])="Todos",("Lima" o "Santiago" o "BA"),([Formularios]![Formulario_Principal]![cbCitty]))
Mi ultima prueba fue la siguiente:
Private Sub Todos_AfterUpdate()
If Me.Todos = True Then
Me.cbCitty = "*"
Me.cbCitty.Enabled = False
Else
Me.cbCitty.Enabled = True
End If
End Sub
y luego volví a probar con:
Ciudad
[Formularios]![Formulario_Principal]![cbCitty]
Ninguna de estas formas me funciono, no se como hacer que omita el criterio cuando este marcado el checkbox, si existe algún comando para mostrar todos o si debo crear un modulo en VB que luego sea llamado como criterio, la idea es hacer un procedimiento único ya que 10 botones dependenden de esto....Ojala alguien pueda orientarme o mostrarme una función en VB para esto ya que la que intente hacer no funciono por la recepción de parámetros.
Saludos.