Access - mensaje si no encuentra datos en una tabla al aplicar filtro

 
Vista:
sin imagen de perfil

mensaje si no encuentra datos en una tabla al aplicar filtro

Publicado por DIGIROY (27 intervenciones) el 06/11/2018 20:58:47
Tengo una base donde en un formulario capturo datos por mes y año ,y otro formulario hace una consulta con los mismos criterios, pero quiero que al momento que haga la consulta, si no tengo datos capturados por determinado mes y año me aparezca un mensaje donde indique que no existen y no me haga el filtro en el formulario, ya que mi formulario se pone en blanco.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
Private Sub Comando259_Click()
Dim filtro1, MES1, AÑO1 As String
Dim largo As Integer
 
 
AÑO1 = Nz(Me.AÑO1, 0)
MES1 = Nz(Me.MES1, "")
filtro1 = ""
 
 
 If AÑO1 <> 0 Then
 
  If MES1 <> "" Then
 
   filtro1 = filtro1 & " and [ESTADO1] = '" & est1 & "'"
   filtro1 = filtro1 & " and [AÑO1] = '" & AÑO1 & "'"
   filtro1 = filtro1 & " and [MES1] = '" & MES1 & "'"
 
    largo = Len(filtro1)
 
   If largo > 0 Then '2
 
    filtro1 = Right(filtro1, largo - 4)
 
   End If '2
 
   Me.[SUB_CONSULTA-2].Form.Filter = filtro1
   Me.[SUB_CONSULTA-2].Form.FilterOn = True
 
 Else
   MsgBox "Seleccione un mes"
  End If
 
 Else
  MsgBox "Seleccione un año"
 End If
 
End Sub

Agradezco de antemano su atención y espero puedan apoyarme
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

mensaje si no encuentra datos en una tabla al aplicar filtro

Publicado por Anonimo (3316 intervenciones) el 06/11/2018 21:38:51
Los formularios (al igual que los informes) poseen una propiedad (HasData) que seria un indicador valido para conocer si tiene o no registros.

El problema es que …. para ello requiere abrir el formulario y si no hay datos es una perdida de tiempo

Pero.... tenemos un filtro, filtro que si se le utiliza en/con una función de dominio (DCount DLookup o la que se conozca mejor) seria un excelente indicador de si hay datos y merece la pena el esfuerzo de abrir el formulario.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

mensaje si no encuentra datos en una tabla al aplicar filtro

Publicado por DIGIROY (27 intervenciones) el 07/11/2018 02:45:44
no funciona tu solución, pero gracias por darte un tiempo en contestarme
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

mensaje si no encuentra datos en una tabla al aplicar filtro

Publicado por Anonimo (3316 intervenciones) el 07/11/2018 08:54:12
Respeto tu libertad de expresión, pero creo que tu respuesta solo indica que no has sido capaz de aplicar una solución que esta plenamente demostrado que si funciona (porque ese 'problema' es mas viejo que Matusalén).

Si realmente tienes interés en llegar a una solución a tu problema, una formula que puede ser de utilidad es publicar 'el intento fallido' para que se pueda apreciar donde se comete el error.

Te recomendaría que comenzaras por definir con claridad a las variables que dimensionas, porque gran parte de ellas están definidas como de tipo 'VARIANT'
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
-1
Comentar
sin imagen de perfil

mensaje si no encuentra datos en una tabla al aplicar filtro

Publicado por DIGIROY (27 intervenciones) el 07/11/2018 17:06:16
Como lo había dicho antes, no funciona y si no eres capaz de ofrecer una solución no te pongas a atacar, por cierto respeto tu libertad de expresión
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 50
Ha aumentado 1 puesto en Access (en relación al último mes)
Gráfica de Access

mensaje si no encuentra datos en una tabla al aplicar filtro

Publicado por Cesar (23 intervenciones) el 07/11/2018 17:26:57
Hola.

El compañero Anonimo tiene razon, tienes que definir con claridad tus variables (filtro1 y MES1 las tienes como Variant), y ese tipo de detalles, en programas mas complejos, llegan a ocasionar problemas.

De igual forma, el compañero te dio la solucion, usa DCount, DLookup, DSum, u otra funcion, para verificar si existen registros, antes de aplicar el filtro.

Y respuestas de tipo "no funciona", no dicen nada. Se mas especifico, ¿Porque no te funciona?, ¿Te da algun error?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
-1
Comentar
sin imagen de perfil
Val: 11
Ha aumentado su posición en 2 puestos en Access (en relación al último mes)
Gráfica de Access

mensaje si no encuentra datos en una tabla al aplicar filtro

Publicado por Ricardo (6 intervenciones) el 08/11/2018 16:40:38
Hola, saludos!

Podrias controlarlo en las propiedades del formulario en vista diseño,... eventos ... al abrir ... y evalua si no tiene registros muestras un mensaje, y luego me.close

En todo caso, cuando ocurre ese evento el objeto evaluara la condicion que le pongas y si se cumple, seguira la instruccion.

Espero ayudarte con mi comentario.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar