Origen de control

En un formulario tengo 2 botones uno que dice tabla1 y otro tabla2, cuando oprima el botón de tabla1 quiero que me abra un informe con los datos de tabla1 y cuando oprima el botón de tabla2 quiero que me abra el MISMO INFORME con los datos de tabla2
Le agradezco me puedan ayudar
Gracias.

4 respuestas

Respuesta
1
Hay una propiedad común tanto para informes como para formularios que se llama recordsource que te permite establecer el origen de los datos.
Simplemente has una rutina que cuando pulses el botón "tabla 1", asigne la tabla 1 como origen de datos del informe. Sería algo así
Dim strtabla as string
strtabla="nombredelatabla"
Reports!nombredelinforme.recordsource=strtabla
Docmd. Openreports "nombredelinforme", acPreview
El nombre del informe stDocName que introdujo esta mal escrito o hace referencia a un informe que no esta abierto o no existe
Disculpa,
La instrucción es Docmd. OpenReport "nombredelinforme", acViewPreview
aunque esto te lo completa cuandom vas escribiendo el código.
Nota: si usas una variable para el nombre del informe no hacen falta las comillas, a menos que escribas directamente el nombre del informe y en ese caso si debes utilizar las comillas.
Prueba de nuevo
Hola
Este error me marca en la linea que te indico
el nombre del informe stDocName que introdujo esta mal escrito o hace referencia a un informe que no esta abierto o no existe
esto lo pongo en un botón de una forma.
Private Sub Comando6_Click()
Dim stDocName As String
Dim strtabla As String
stDocName = "Informe1"
strtabla = "tabla2"
Reports!stDocName.RecordSource = strtabla    <---- aqui me marca el error
DoCmd.OpenReport "Informe1", acViewPreview
End Sub
AHH! Claro,
Es que esa sintaxis no admite una variable string de esa manera, para esto debes escribirlo de esta otra manera
Reports(stDocName).RecordSource=strtabla
Respuesta
1
Le recomiendo que haga dos informes iguales, pero con diferente origen y que lo abra el otro botón.
Le explico mejor, el informe de la tabla 1 que se lo abra el botón 1 y otro informe de origen la tabla 2 que lo abra el otro botón.
Gracias pero lo necesito para el mismo informe...
Haciendo dos informes, el usuario final de la base de datos no se va a dar cuenta de si es uno y otro.
Yo personalmente también quería hacer eso, pero la posibilidad de hacer dos informes, y la imposibilidad de tu propuesta me resulto muchísimo más fácil de realizar y sobre todo efectivo.
Le sigo recomendando que parta de una consulta de las tablas que necesita y realice dos informes.
Si tu propuesta es correcta y eso fue lo que hice lo que pasa es que son 36 informes de lo mismo, es de una escuela entonces lo que cambia son las tablas de los grupos de alumnos, y cuando tengo que hace una modificación tengo que modificar 36 informes en vez de modificar solo uno.
Escribí esto en un botón de un formulario, pero me marca error en el nombre stdocName esta mal escrito o el informe no esta abierto
 Dim strtabla As String
 Dim stDocName As String
 stDocName = "Informe1"
 strtabla = "tabla2"
 Reports!stDocName.RecordSource = strtabla
 DoCmd.OpenReport stDocName, acPreview
Yo no se otra solución que la de crear dos informes, y abrirlos dependiendo de cosas, lo de cambiar el origen del informe dependiendo de variables, no tengo la menor idea.
Si la posibilidad de crear dos informes lo ve difícil, y siendo el numero que son, ahora normal que de pereza, pregunte a cualquiera de los dos expertos que le escribo a continuación. Controlan bastante en el campo de bases de datos y access, ademas suelen contestar bastante rápido.
numerobix
angelessebas
Siento no poderle ayudar mucho más.
Respuesta
1
Lo que primero debes realizar es una consulta, que si vos necesitas que tenga los datos de la tabla1 realiza la consulta con esa tabla solamente, y segundo realizar el informe correspondiente de esa consulta, (esto debes hacerlo con cada una de las tablas, a no ser que sean muy similares y la diferencia entre tablas sea un filtro o un tipo de ordenamiento) .el camino más corto para cuando aprietas el botón aparezca el informe, es con el botón del asistente activado crear el comando (botón 1) y vas a ver que el asistente te guía para que abras el informe, y lo mismo con el otro botón.
Espero haber ayudado, sino mándame una imagen con lo que quieres realizar o un poco más explicado.
Respuesta
Tiene usted que crear dos informes cada uno asociado a su tabla. Aunque sean clónicos.
Después añada el botón en vista diseño y siga las instrucciones en cada caso. Pero no se puede que un mismo informe cambie de fuente de datos al pulsar un botón (o si se puede, seguro que requiere muchas líneas de programación).

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas