Calculo con campos de consulta de referencias cruzadas
En primer lugar me gustaría agradecer tu colaboración desinteresada. Intentaré ser breve y concreto.
Tengo una tabla con dos campos: Fecha y ventas
Quiero el siguiente gráfico de Microsoft Graph para un informe en Access: En el eje POR los meses, en el eje Y las ventas. Solo se podrá pedir para dos años, ni más ni menos. En la tabla de datos que acompaña al gráfico aparecerá una línea con los datos de cada año y por meses, y una última línea con la evolución porcentual de un año a otro (De ahí que se tenga que pedir solo para dos años)
He colocado como origen de datos del gráfico lo siguiente:
PARAMETERS Año1 Text ( 255 ), Año2 Text ( 255 );
TRANSFORM Sum([Tabla1].Ventas) AS SumaDeVentas
SELECT Format([Fecha],"mmm") AS Mes
FROM [Tabla1]
WHERE (((Format([Fecha],"""yyyy"""))=[año1])) OR (((Format([Fecha],"""yyyy"""))=[año2]))
GROUP BY Format([Fecha],"mmm")
PIVOT Format([Fecha],"""yyyy""");
Y la tabla de datos que obtengo es del estilo:
Mes 2008 2009
Enero 1000,76 8758,98
Febrero 8696,87 3453,76...
Tanto los datos como la gráfica salen perfectos. Pero no sé como conseguir el % de evolución entre una año y otro.
He probado a añadir un campo como encabezado de fila del tipo %:[2009]/[2008]-1 y lo calcula genial, pero solo si solicitamos los años 2008 y 2009 y necesito que el cálculo se obtenga para cualquier pareja de años.
Tengo una tabla con dos campos: Fecha y ventas
Quiero el siguiente gráfico de Microsoft Graph para un informe en Access: En el eje POR los meses, en el eje Y las ventas. Solo se podrá pedir para dos años, ni más ni menos. En la tabla de datos que acompaña al gráfico aparecerá una línea con los datos de cada año y por meses, y una última línea con la evolución porcentual de un año a otro (De ahí que se tenga que pedir solo para dos años)
He colocado como origen de datos del gráfico lo siguiente:
PARAMETERS Año1 Text ( 255 ), Año2 Text ( 255 );
TRANSFORM Sum([Tabla1].Ventas) AS SumaDeVentas
SELECT Format([Fecha],"mmm") AS Mes
FROM [Tabla1]
WHERE (((Format([Fecha],"""yyyy"""))=[año1])) OR (((Format([Fecha],"""yyyy"""))=[año2]))
GROUP BY Format([Fecha],"mmm")
PIVOT Format([Fecha],"""yyyy""");
Y la tabla de datos que obtengo es del estilo:
Mes 2008 2009
Enero 1000,76 8758,98
Febrero 8696,87 3453,76...
Tanto los datos como la gráfica salen perfectos. Pero no sé como conseguir el % de evolución entre una año y otro.
He probado a añadir un campo como encabezado de fila del tipo %:[2009]/[2008]-1 y lo calcula genial, pero solo si solicitamos los años 2008 y 2009 y necesito que el cálculo se obtenga para cualquier pareja de años.
1 Respuesta
Respuesta de luis45ccs
1