Access criterios entre meses variables

Dudas sobre cualquier tema relacionado con Access que no tenga cabida expresa en los otros hilos
pepegoteras
Nivel 1
Mensajes: 4
Registrado: Lun Sep 13, 2021 11:01 am

Access criterios entre meses variables

Mensajepor pepegoteras » Lun Nov 22, 2021 3:33 pm

Buenas tardes a todos y mil gracias como siempre.

Tengo una tabla con tres campos: materiales ,cantidad ,fecha y estoy intentando hacer un query de la siguiente manera:

Material/ Noviembre / Diciembre /Enero
A Suma cantidad entre 22/11/2020 y 31/11/2021 Suma cant mes siguiente Suma cant mes siguiente
B
C

En vba he conseguido obtener fechas para aplicar con variables pero no soy capaz de aplicarlo en access.

x1 = DateSerial(Year(Date), Month(Date), 1) 'primer día del mes
x2 = DateSerial(Year(Date), Month(Date) + 1, 0) 'ultimo día del mes
x3 = DateSerial(Year(Date) - 1, Month(Date), 1) 'hace un año

Otra cosa que he conseguido pero no es el resultado que busco es con el siguiente criterio:
Month([Fecha]) = Month(Date()) con esto me muestra los pedidos del mes actual pero no se hacer para que me muestre el siguiente mes.

Si alguien sabe como ayudarme le estoy muy agradecido.

Mil gracias
Un saludo

pitxiku
VIP
Reto02
Mensajes: 582
Registrado: Sab Sep 30, 2017 6:23 pm

Re: Access criterios entre meses variables

Mensajepor pitxiku » Mié Nov 24, 2021 2:48 pm

Prueba con una consulta de referencias cruzadas. Usa el asistente para que te guíe. Si podrás indicar que las columnas sean los meses del año, y que te sume las cantidades por material. Luego, en los criterios, filtra por año:

- https://support.microsoft.com/es-es/off ... d8484667e8

pepegoteras
Nivel 1
Mensajes: 4
Registrado: Lun Sep 13, 2021 11:01 am

Re: Access criterios entre meses variables

Mensajepor pepegoteras » Mar Dic 21, 2021 11:34 am

Buenas, comparto el código para conseguir obtener los meses a través de variables :

Private Sub Comando11_Click()
Dim Consulta As String
x1 = Format(DateSerial(Year(Date), Month(Date), 1), "mm/dd/yyyy") 'primer dia del mes actual
x2 = DateSerial(Year(Date), Month(Date) + 1, 0) 'ultimo dia del mes actual
x3 = DateSerial(Year(Date) - 1, Month(Date), 1) 'hace un año

Consulta = "SELECT HOLA.Material, HOLA.Cliente, Sum(HOLA.Ctd_Pedido) AS SumaDeCtd_Pedido "
Consulta = Consulta & "FROM HOLA "
Consulta = Consulta & "WHERE (((HOLA.F_Entrega) Between #" & x1 & "# And #" & x2 & "#)) "
Consulta = Consulta & "GROUP BY HOLA.Material, HOLA.Cliente "
Consulta = Consulta & "ORDER BY HOLA.Material; "

Me.Lista3.RowSource = Consulta
End Sub

Suma las cantidades por material con el filtrado de fechas de todo el mes actual, quedando algo asi:

Material-Cliente-Suma_mes_actual
A Snk 1
B Snk 2
C Cp 3

ahora lo que quisiera hacer es agregar otra columna (suma_mes_siguiente) que sume las cantidades del siguiente mes pero no lo consigo, si alguien puede orientarme Mil gracias
Un saludo.

pitxiku
VIP
Reto02
Mensajes: 582
Registrado: Sab Sep 30, 2017 6:23 pm

Re: Access criterios entre meses variables

Mensajepor pitxiku » Jue Ene 20, 2022 6:01 pm

Lo primero, siento no haber respondido antes.

Lo segundo, como parece que necesitas el mes actual y el siguiente, te he creado un pequeño ejemplo:

- Accdb: https://1drv.ms/u/s!AsYMk9OS3HACuQuMzTX ... S?e=aNoR0o
- Zip: https://1drv.ms/u/s!AsYMk9OS3HACugLfJb7 ... v?e=SqHfgB

La consulta qryMeses filtra los registros de la tabla Ventas, y coloca las cantidades de venta en 2 columnas, la de este mes y la del siguiente. Luego, la consulta qryMeses_Totales no es más que una consulta de totales basada en la la consulta anterior.

También hay una consulta de referencias cruzadas por si quieres verla, pero si son sólo los datos de 2 meses lo que necesitas, quizá este método sea más sencillo.


Volver a “Cajón de sastre”

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 2 invitados