Gráficos en access 97

¿Cómo están?.
Me encuentro
Trabajando en access y tengo un serio problema con los gráficos, revisando las consultas en todoexpertos, me he encontrado con preguntas similares pero la verdad no me logran ayudar con el problema.
Mi problema es el siguiente:
Tengo una consulta en la cual uno de los campos tiene como criterio un valor que
esta dado por un cuadro de texto de un formulario. Los datos los entrega bien, y la consulta se ejecuta bien, el problema es que en el informe
tengo un gráfico que al ejecutar en el formulario la vista previa del informe me dice:
"el motor de base de datos de microsoft jet no reconoce
'[forms]![año][fecha de inicio]' como un nombre de campo o expresion validos" y al
aceptar entrega la tabla del informe pero el grafico sale en blanco.
He revisado todo para estar seguro que no es un error de "tipeo" en el criterio o
nombres de los cusdros de texto, pero no me funciona.
No se si me he expresado bien, pero les pido por favor que me ayuden.
Gracias de antemano por la ayuda que me puedan dar.
Atentamente.
Claudio
PD: me encuentro trabajando en access 97.

1 Respuesta

Respuesta
1
Si la consulta es de referencia cruzada no se permiten el paso de parámetros a través de formularios,
intentalo definiendo una variable global en un módulo, y a través de una función entregas el valor de la variable a la consulta ejemplo:
En el evento del botón con el que abres el informe le das el valor a la variable valor, valor = [forms]![año][fecha de inicio].
Global valor as integer
function entregavalor()as integer
entregavalor = valor
end function
Y en la consulta le colocas entregavalor()
Y listo
Prueba eso espero que te funcione.
Hola, primero que todo, gracias por tu interés y tiempo.
La consulta no es de referencia cruzada, pero según lo que entiendo, el gráfico extrae los datos de los campos de la consulta y crea una consulta de referencia cruzada, no se si esto influye.
Hice lo que me dijiste pero la verdad es que hace 2 semanas que estoy trabajando en Access y la verdad no me considero muy experto, no sé si lo que hice es exactamente lo que me explicaste.
Primero hice un modulo en le cual escribí exactamente lo que escribisteis tu, luego, en el criterio de la fecha en la consulta escribí el nombre de la función, en este caso, entregavalor(). Después de esto en el botón de vista previa de informe en el formulario, en el generador de expresiones coloque:
Private Sub Comando5_Click()
On Error GoTo Err_Comando5_Click
Dim stDocName As String
valor = "[Forms]![año]![fecha inicio]"
stDocName = "AñoCantidadDeCajasMensualesPorCoordinador(SOLOFRUTA)"
DoCmd.OpenReport stDocName, acPreview
Exit_Comando5_Click:
Exit Sub
Err_Comando5_Click:
MsgBox Err.Description
Resume Exit_Comando5_Click
End Sub
Yo creo que acá esta el error puesto que me sale una ventana en la que me dice que espera una función pero no un modulo, no se la verdad.
Entiendo lo que quiere decir el código, pero no se si le falta algo, no se si hay que llamar la variable o algo por el estilo.
Perdón por la insistencia pero no me funciona.
De antemano gracias nuevamente, por tu disposición y por tu tiempo.
Claudio
1.-Puede ser que no te tome el valor que introduces "[Forms]![año]![fecha inicio]"
, cambialo por me.nombredelcaudro.value
2.- La función tienes que crearla dentro del modulo y la variable también debe estar en el modulo, no el el código del formulario.
3.- Si ninguna de estas cosas te funcionan prueba cambiando la variable de global a public, de lo contrario dame tu mail y yo te creo un ejemplo o mandame la aplicación para arreglarla.
[email protected]

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas