Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.
Hola
Estoy buscando una manera de calcular mis datos para cada mes desde la 1ª fecha del mes hasta la fecha actual. Como si hoy fuera 21 de octubre, entonces todos los datos de cada mes se calcularán desde el día 1 hasta el día 21.
1 ene a 21 ene,
1 feb a 21 feb,
1 mar a 21 mar
y así sucesivamente.
Ya sé que esto es posible mediante el uso de Slicer, esto puede cortar manualmente el valor de los datos por día en la tabla Fecha.
¿Cómo hago el filtro (como lo hizo la segmentación de datos) dentro de la fórmula Calcular para obtener el día 1 a la fecha actual / fecha de hoy para cada mes?
Solved! Go to Solution.
Gracias por la aclaración. Aquí hay una manera de hacerlo.
Hasta el mismo día =
VAR hoy =
DÍA ( HOY () )
VAR mindate =
MIN ( 'Fecha'[Fecha] )
VAR maxdate =
FECHA ( AÑO ( mindate ), MES ( mindate ), hoy hoy)
DEVOLUCIÓN
CALCULAR (
[Ventas totales],
FILTER ( ALL ( 'Date' ), 'Date'[Date] >= mindate && 'Date'[Date] <= maxdate )
)
Palmadita
Allí, @jonathangabe
Tu caso parece muy interesante, me tomó un tiempo y luego se me ocurrió una solución, y si te ayuda, eso es genial.
Aquí está mi medida:
Measure__lastdate =
var _r=CALCULATE(DAY(MAX([Date])),ALL('Table'))
var _result=CALCULATE(SUM('Table'[Value]),FILTER(ALL('Table'),YEAR('Table'[Date])=YEAR(MAX('Table'[Date]))&&MONTH('Table'[Date])=MONTH(MAX('Table'[Date]))&&'Table'[Date]<=EOMONTH(MAX('Table'[Date]),-1)+_r))
return _result
Si desea que los datos cambien dinámicamente como lo hace la segmentación de datos anterior, cree un parámetro de qué pasaría si.
por lo que la medida:
Measure =
var _result=CALCULATE(SUM('Table'[Value]),FILTER(ALL('Table'),YEAR('Table'[Date])=YEAR(MAX('Table'[Date]))&&MONTH('Table'[Date])=MONTH(MAX('Table'[Date]))&&'Table'[Date]<=EOMONTH(MAX('Table'[Date]),-1)+[Days Value]))
return _result
Datos:
Resultado:
Consulte el archivo adjunto a continuación para obtener más detalles. Espero que esto ayude.
Saludos
Equipo de apoyo a la comunidad _ Zeon Zheng
Si esta publicación ayuda,entonces considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.
Allí, @jonathangabe
Tu caso parece muy interesante, me tomó un tiempo y luego se me ocurrió una solución, y si te ayuda, eso es genial.
Aquí está mi medida:
Measure__lastdate =
var _r=CALCULATE(DAY(MAX([Date])),ALL('Table'))
var _result=CALCULATE(SUM('Table'[Value]),FILTER(ALL('Table'),YEAR('Table'[Date])=YEAR(MAX('Table'[Date]))&&MONTH('Table'[Date])=MONTH(MAX('Table'[Date]))&&'Table'[Date]<=EOMONTH(MAX('Table'[Date]),-1)+_r))
return _result
Si desea que los datos cambien dinámicamente como lo hace la segmentación de datos anterior, cree un parámetro de qué pasaría si.
por lo que la medida:
Measure =
var _result=CALCULATE(SUM('Table'[Value]),FILTER(ALL('Table'),YEAR('Table'[Date])=YEAR(MAX('Table'[Date]))&&MONTH('Table'[Date])=MONTH(MAX('Table'[Date]))&&'Table'[Date]<=EOMONTH(MAX('Table'[Date]),-1)+[Days Value]))
return _result
Datos:
Resultado:
Consulte el archivo adjunto a continuación para obtener más detalles. Espero que esto ayude.
Saludos
Equipo de apoyo a la comunidad _ Zeon Zheng
Si esta publicación ayuda,entonces considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.
@jonathangabe , use datesytd con la ayuda de la tabla de fechas
ejemplo
MTD Sales = CALCULATE(SUM(Sales[Sales Amount]),DATESMTD('Date'[Date]))
basado en hoy
MTD=
var _min = eomonth(today(),-1)+1
var _max = hoy()
devolución
CALCULATE(sum('Table'[Qty]), FILTER(ALL('Table'),'Table'[Date] >= _min && 'Table'[Date] <=_max ) )
Power BI: mes a mes con o sin inteligencia de tiempo
https://medium.com/@amitchandak.1978/power-bi-mtd-questions-time-intelligence-3-5-64b0b4a4090e
https://www.youtube.com/watch?v=6LUBbvcxtKA
Hola @amitchandak,gracias por su respuesta.
Ya he probado su fórmula de solución basada en hoy, pero el resultado solo se muestra hoy mes. Quiero obtener el resultado de cada mes, no solo de octubre (mes de hoy). Eso está cerca, pero no es lo que quiero lograr.
Pruebe el primer ejemplo de Amit con DATESMTD(). Si tiene una tabla de fechas (y marcada como una tabla de fechas), debería funcionar.
Palmadita
Hola @mahoneypat,gracias por su respuesta.
Lo siento, parece que no expliqué completamente lo que quiero lograr aquí. Por lo que da @amitchandak, ya tengo el cálculo para MTD.
Lo que estoy tratando de lograr es calcular mis datos para cada mes en función de la fecha de hoy.
Ejemplo:
Si la fecha de hoy es el 22 de octubre, entonces el cálculo solo mostrará para cada mes del rango 1 al 22.
1 ene a 22 ene
1 feb a 22 feb
y así sucesivamente.
Así que no el mes hasta la fecha, esto solo muestra este mes hasta la fecha de hoy, pero el otro mes muestra el total hasta el final del mes.
Todavía no puedo hacer esto sin usar Slicer, si no hay forma de lograr esto sin él, entonces tal vez realmente tenga que usar manualmente el Slicer para cortar los datos entre el rango de días que quiero.
Gracias por la aclaración. Aquí hay una manera de hacerlo.
Hasta el mismo día =
VAR hoy =
DÍA ( HOY () )
VAR mindate =
MIN ( 'Fecha'[Fecha] )
VAR maxdate =
FECHA ( AÑO ( mindate ), MES ( mindate ), hoy hoy)
DEVOLUCIÓN
CALCULAR (
[Ventas totales],
FILTER ( ALL ( 'Date' ), 'Date'[Date] >= mindate && 'Date'[Date] <= maxdate )
)
Palmadita
@mahoneypat Muchas gracias, su solución es perfecta.
Trato de modificar un poco tu fórmula. Cambio el DAY(TODAY()) a DAY(LASTDATE[mydatetable]) porque quiero hacer referencia a la última Fecha en mi tabla para el FILTER, pero obtuve un error,
"Un argumento de la función 'DATE' tiene el tipo de datos incorrecto o el resultado es demasiado grande o demasiado pequeño"
Supongo que el resultado de LASTDATE[mydatetable] es demasiado grande, pero todavía no estoy seguro. Tengo una tabla de fecha que tiene relación con mi columna de fecha en mi tabla, todavía me pregunto si tengo que usar la tabla de fechas o la columna de fecha de mis datos.
Puede probar MAXX(ALL(Table[Date]), Table[Date]) para obtener la última fecha de su tabla a pesar de los filtros.
Palmadita
Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City
Check out the April 2024 Power BI update to learn about new features.
User | Count |
---|---|
2 | |
1 | |
1 | |
1 | |
1 |
User | Count |
---|---|
2 | |
2 | |
2 | |
2 | |
1 |