Ocultar o mostrar subinforme creando una opción al seleccionar

A ver si me podéis ayudar con esta idea

Tengo un combo con los nombres de varios informes con subinformes asociados cada uno. Los informes no están relacionados, todos sin independientes y cada uno con su subinforme..

El combo lo he llamado lst_informes

Los nombres de los informes son BLANCA, BLANDA, DIABÉTICA...

Y cada uno de ellos lleva su subinforme.

El informe BLANCA lleva el subinforme Blanca_nombres, el informe BLANDA lleva el subinforme Blanda_nombres y así sucesivamente.

Me podríais ayudar, por favor, para que cuando seleccione BLANCA o BLANDA... Me salga algo que me permita aceptar o denegar la presentación del subinfome.

1 respuesta

Respuesta
1

Se puede hacer de muchas formas, depende de la construcción del formulario. Por ejemplo, vamos a suponer que tengo un informe ventas, al que para el ejemplo te he metido de clavo un subinforme llamado DetalleCompra

Vamos a suponer que tengo un formulario con un cuadro de lista Lista4 donde elijo los informes y dos botones de opción, pero se podría hacer de otra forma, Con y Sin, y por último el botón que abre el informe, aunque se podría poner en algún otro evento.

Al pulsar el botón

Por el contrario, si lo pongo como

Al pulsar

El código del botón es

Private Sub Comando8_Click()
DoCmd.OpenReport "" & Me.Lista4.Value & "", acPreview
End Sub

Y el código del evento Al cargar del informe

Private Sub Report_Load()
If Forms!formulario1!Con = -1 Then
Me.DetalleCompra.Visible = True
ElseIf Forms!formulario1!Sin = -1 Then
Me.DetalleCompra.Visible = False
End If
End If
End Sub

Es decir, cuando se carga el informe comprueba si está abierto el formulario, que sí lo está, y luego, en función del botón que esté marcado, muestra u oculta el subinforme.

Hola de nuevo,

Bueno no termino de aclararme demasiado

He puesto en las propiedades del cuadro de lista 

Private Sub CuadroCombinado4_Click()
If
Hola de nuevo,MsgBox("Quieres imprimir con subformulario", vbYesNo + vbQuestion, "Confirmación") = vbYes Then
DoCmd.OpenReport Me.CuadroCombinado4.Column(1), acViewPreview
End If
End Sub

Me sale un cuadro de mensaje que si le selecciono "sí" en la confirmación me sale el informe.

Si selecciono "No" cierro el cuadro.

Mi interés es que si pulso "Sí" me abra el "INFORME" con el "SUBINFORME"

Y si pulso "No", me abra el "INFORME" y niegue la presentación del subinforme.

He intentado escribir en las propiedades del subinforme en "al cargar", pero no consigo adaptar la orden 

Option Compare Database
Option Explicit

Private Sub Report_Load()
If CurrentProject.AllForms("FormInternos").IsLoaded Then
If Forms!FormInternos!Sí = -1 Then
Me.Subinforme_CDietas.Visible = True
ElseIf Forms!FormInternos!Cancelar = -1 Then
Me.Subinforme_CDietas.Visible = False
End If
End If
End Sub

Se que no lo hago bien, tampoco es que lo sepa, pero lo estoy intentando y no consigo sacarle punta.

Como podría hacerlo, por favor!!

Gracias.

Saludos

¿Puedes poner una imagen del formulario en vista ídem.?

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas