Ocultar subinforme access 2007

Quisiera saber si alguien me puede ayudar con el siguiente problema:
Tengo un informe en access que contiene 5 subformularios y necesito que los subformularios se muestren solo cuando tengan datos y en caso contrario se ocuten (incluyendo el encabezado)

1 respuesta

Respuesta
2
En primer lugar debes seleccionar todo y en propiedades colocar visible=false.
Luego definir que campo determina los datos que se filtraran en el subformulario y colocar un evento para que cuando un campo "x" (preferiblemente de valor numérico) del subformulario cambie, el subformulario sea visible.
Por ejemplo:
Private Sub <nombredelcampo>_Change()
  <Subformulario>!<campodelsubformulario>.setfocus
  var=<Subformulario>!<campodelsubformulario>.text
  if var<>0 or var <>NULL then
   etiqueta_subformulario.visible=true
   subformulario.visible=true
  end if
End Sub
También puedes usar las opciones así puedes usar una opción para casa subformulario, cuando este "x" opción activa solo se muestra un subformulario y los demás permanecen ocultos.
Primero de todo, feliz año
Gracias por tu ayuda, pero cometí un error al formular la pregunta. Quise decir subinfirme en vez de subformulario, aunque tus indicaciones me han sido muy útiles también para un aspecto parecido que tengo que aplicar en subformularios.
El problema de los subinformes lo solucioné con la propiedad HasData, (no he descubierto que el evento NoData no vale para subinformes).
El problema ahora es algo para rizar el rizo.
El subinforme se divide en una primera categoría, luego en una segunda (relación 1>varios) y finalmente el detalle en donde se muestran cinco subinformes de cinco tablas independientes (también relación 1>varios), es decir
cat1
  cat2 (rel 1>varios)
     Detalle
        Subinforme [tabla 1 ( rel 1>varios)]
        Subinforme [tabla 2 (rel 1 varios )]
        .
        .
        8 veces
Ocultar los subinformes no es problema, pero cuando algún subinforme esta vacío deja una linea en blanco. Necesitaría evitar esa linea en blanco.
Espero que me haya explicado bien, y puedas orientarme por donde ir...
Muchísimas gracias por tu tiempo
Disculpa pero realmente no se si entendí la pregunta, lo único que te puedo recomendar es que cuando un subinforme este vacío lo cambies de lugar con los demás (cambiar la altura) de manera que el primer subinforme sea el que tiene los datos, de esta manera deberían eliminarse los espacios en blanco

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas