Informes en access

Buenas Tardes
Quiero crear un botón en un formulario de access para abrir un informe, pero no quiero abrior siempre el mismo informe, quiero que me pregunte cual es el informe que quiero abrir, ¿me puede ayudar por favor?

1 Respuesta

Respuesta
1
Te explico cómo tengo solucionado el tema:
Primero: debes hacerte con un tabla de informes, es decir, hacerte con un tabla donde se indiquen los informes que hay en la aplicación. No es necesario hacerlo, ya que ésta tabla existe, aunque oculta. La tabla se llama MSysObjects y no se debe modificar bajo ninguna circunstancia!. Para ver la tabla, debes habilitar la vista de tablas ocultas (menú herramientas --> opciones --> ver --> objetos ocultos y objetos del sistema).
Veras las tablas (NO LAS TOQUES!).
Crea una consulta (p.e. Lista de informes) con los siguientes parámetros :
SELECT MSysObjects.Name
FROM MSysObjects
WHERE (((MSysObjects.Name) Not Like "~*") AND ((MSysObjects.Type)=-32764) AND ((MSysObjects.Flags)=0))
ORDER BY MSysObjects.Name;
Al ejecutar ésta consulta, debe salir los nombres de los informes.
Una vez tienes los informes, lo demás es más sencillo:
Hazte en un nuevo formulario o donde tú lo desees un comboBox o un ListBox con el resultado de ésta consulta como origen de datos del control.
En el control del combo box o list box y en la propiedad de origen pones la consulta creada.
Luego un botón o un código de evento que ejecute el informe :
    Dim stDocName As String
    stDocName = Me.combobox ###Es el valor del combo box o list box que has seleccionado###
    If stDocName = "" Then
        valor = MsgBox("No se ha seleccionado ningún informe", vbExclamation)
    Else
        DoCmd.OpenReport stDocName, acViewPreview
    End If

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas