Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Get Fabric Certified for FREE during AI Skills Fest. This week only. Secure your voucher now.

Reply
Anonymous
Not applicable

Filtrar por fecha en el gráfico de barras

Hola a todos,

Quiero mostrar cuatro gráficos de barras diferentes para una columna de volumen.

1. Volumen por día; ayer vs día antes de ayer

2. Volumen por semana; La última semana a la fecha vs WtD actual

3. Volumen por mes; El último mes hasta la fecha frente al MtD actual

4. Volumen por año; El último año hasta la fecha frente al YtD actual

En este momento tengo los cuatro gráficos, pero para semana, mes y año mi vista ahora es la última semana completa / mes / año vs volumen actual hasta la fecha. Lo que significa que veo por ejemplo la semana pasada frente a la semana actual a la fecha (sólo dos días hasta ahora), esto hace que la comparación sea bastante extraña. ¿Es posible hacer algo al respecto?

Utilizo una tabla de calendario vinculada al volumen y uso filtros de fecha relativa y filtros de desplazamiento para Semana, Mes y Año. Como se puede ver a continuación, la comparación se convierte en bastante missrepresentative, especialmente para la vista de mes.

Anteckning 2020-04-14 142732.png

¡Gracias!

4 REPLIES 4
v-frfei-msft
Community Support
Community Support

Hola @_Xandyr_ ,

He creado una muestra para su referencia.

day = var today = TODAY()
var last = today-1
return
CALCULATE(SUM('Table'[value]),FILTER('date','date'[Date]>=last && 'date'[Date]<=today))
week_ = 
VAR today =
    TODAY ()
VAR weeknum =
    WEEKNUM ( today, 2 )
VAR weekday =
    WEEKDAY ( today, 2 )
VAR todayyearwekk =
    YEAR ( today ) * 100 + weeknum
VAR lsw =
    CALCULATE (
        MAX ( 'date'[yearweek_] ),
        FILTER ( ALL ( 'date' ), 'date'[yearweek_] < todayyearwekk )
    )
RETURN
    CALCULATE (
        SUM ( 'Table'[value] ),
        FILTER (
            'date',
            AND (
                [yearweek_] = todayyearwekk
                    || 'date'[yearweek_] = lsw,
                WEEKDAY ( [Date] ) <= weekday
            )
        )
    )

YM = 
VAR today =
    TODAY ()
VAR st =
    DATE ( YEAR ( today ), MONTH ( today ), 1 )
VAR premonth =
    EDATE ( today, -1 )
VAR spre =
    DATE ( YEAR ( premonth ), MONTH ( premonth ), 1 )
RETURN
    CALCULATE (
        SUM ( 'Table'[value] ),
        FILTER (
            'date',
            OR (
                'date'[Date] <= today
                    && 'date'[Date] >= st,
                'date'[Date] >= spre
                    && 'date'[Date] <= premonth
            )
        )
    )
Year = 
VAR today =
    TODAY ()
VAR stofyear =
    DATE ( YEAR ( today ), 1, 1 )
VAR spre =
    DATE ( YEAR ( today ) - 1, 1, 1 )
VAR pre =
    EDATE ( today, -12 )
RETURN
    CALCULATE (
        SUM ( 'Table'[value] ),
        FILTER (
            'date',
            OR (
                'date'[Date] >= stofyear
                    && 'date'[Date] <= today,
                'date'[Date] >= spre
                    && 'date'[Date] <= pre
            )
        )
    )

Capture.PNG

Para obtener más detalles, consulte el pbix como adjunto.

Community Support Team _ Frank
If this post helps, then please consider Accept it as the solution to help the others find it more quickly.
Anonymous
Not applicable

Hola @v-frfei-msft

Acaba de probar sus ejemplos mediante el uso de los códigos y modificarlos a mis datos, también miró en su archivo PBIX adjunto. Tengo que decir WOW, esto funcionó perfectamente y exactamente cómo quería que hiciera! Comprobado con mis datos sin procesar y todo es exactamente como debería!

Muchas gracias por la ayuda, ¡apreciémoslo!

amitchandak
Super User
Super User

@_Xandyr_

Para la semana consulte mi archivo: https://www.dropbox.com/s/d9898a48e76wmvl/sales_analytics_weekWise.pbix?dl=0

Para ayer se puede utilizar

último día: CALCULATE(SUM(Sales[Sales Amount]),dateadd('Date'[Date],-1,Day))

Para otros prefieren usar la inteligencia del tiempo con el calendario de fechas

MTD Sales = CALCULATE(SUM(Sales[Sales Amount]),DATESMTD('Date'[Date]))
last MTD Sales = CALCULATE(SUM(Sales[Sales Amount]),DATESMTD(dateadd('Date'[Date],-1,MONTH)))
last MTD (complete) Sales =  CALCULATE(SUM(Sales[Sales Amount]),DATESMTD(ENDOFMONTH(dateadd('Date'[Date],-1,MONTH))))
last year MTD Sales = CALCULATE(SUM(Sales[Sales Amount]),DATESMTD(dateadd('Date'[Date],-12,MONTH)))
last year MTD (complete) Sales =  CALCULATE(SUM(Sales[Sales Amount]),DATESMTD(ENDOFMONTH(dateadd('Date'[Date],-12,MONTH))))


last QTR same Month (complete) Sales =  CALCULATE(SUM(Sales[Sales Amount]),DATESMTD(ENDOFMONTH(dateadd('Date'[Date],-1,Qtr))))


MTD (Year End) Sales =  CALCULATE(SUM(Sales[Sales Amount]),DATESMTD(ENDOFYEAR('Date'[Date])))
MTD (Last Year End) Sales =  CALCULATE(SUM(Sales[Sales Amount]),DATESMTD(ENDOFYEAR(dateadd('Date'[Date],-12,MONTH),"8/31")))

 

QTD Sales = CALCULATE(SUM(Sales[Sales Amount]),DATESQTD(('Date'[Date])))

Last QTD Sales = CALCULATE(SUM(Sales[Sales Amount]),DATESQTD(dateadd('Date'[Date],-1,QUARTER)))
Last complete QTD Sales = CALCULATE(SUM(Sales[Sales Amount]),DATESQTD( ENDOFQUARTER(dateadd('Date'[Date],-1,QUARTER))))

Last to last QTD Sales = CALCULATE(SUM(Sales[Sales Amount]),DATESQTD(dateadd('Date'[Date],-2,QUARTER)))
Next QTD Sales = CALCULATE(SUM(Sales[Sales Amount]),DATESQTD(dateadd('Date'[Date],1,QUARTER)))

Last year same QTD Sales = CALCULATE(SUM(Sales[Sales Amount]),DATESQTD(dateadd('Date'[Date],-1,Year)))
Last year same QTD Sales = CALCULATE(SUM(Sales[Sales Amount]),DATESQTD(ENDOFQUARTER(dateadd('Date'[Date],-1,Year))))

trailing QTR = CALCULATE(SUM(Sales[Sales Amount]),dateadd('Date'[Date],-1,QUARTER))
trailing  4 QTR = CALCULATE(SUM(Sales[Sales Amount]),dateadd('Date'[Date],-4,QUARTER))



YTD Sales = CALCULATE(SUM(Sales[Sales Amount]),DATESYTD(('Date'[Date]),"12/31"))
This Sales = CALCULATE(SUM(Sales[Sales Amount]),DATESYTD((ENDOFYEAR('Date'[Date])),"12/31"))

Last YTD Sales = CALCULATE(SUM(Sales[Sales Amount]),DATESYTD(dateadd('Date'[Date],-1,Year),"12/31"))
Last YTD complete Sales = CALCULATE(SUM(Sales[Sales Amount]),DATESYTD(ENDOFYEAR(dateadd('Date'[Date],-1,Year)),"12/31"))
Last to last YTD Sales = CALCULATE(SUM(Sales[Sales Amount]),DATESYTD(dateadd('Date'[Date],-2,Year),"12/31"))

Year behind Sales = CALCULATE(SUM(Sales[Sales Amount]),dateadd('Date'[Date],-1,Year))

Para obtener lo mejor de la función de inteligencia de tiempo. Asegúrese de que tiene un calendario de fechas y se ha marcado como la fecha en la vista de modelo. Además, únase a él con la columna de fecha de su hecho/s. Consulte:
https://radacad.com/creating-calendar-table-in-power-bi-using-dax-functions
https://www.archerpoint.com/blog/Posts/creating-date-table-power-bi
https://www.sqlbi.com/articles/creating-a-simple-date-table-in-dax/

Share with Power BI Enthusiasts: Full Power BI Video (20 Hours) YouTube
Microsoft Fabric Series 60+ Videos YouTube
Microsoft Fabric Hindi End to End YouTube
Anonymous
Not applicable

Hola @amitchandak

Gracias por la rápida respuesta y la información. Sin embargo, no estoy seguro de que esta es la solución correcta para mí, como traté de mostrar en mi post necesito usar un gráfico de barras apiladas y mostrar por ejemplo la semana pasada a "día específico" vs la semana actual a "día específico". Diga su martes hoy entonces quiero que mi tabla de la semana muestre dos barras, una para la última semana al martes y otra para la semana actual al martes. ¿Es posible?

Para el mes Sería el mes pasado al 14 de marzo vs mes actual al 14 de abril. Y esto debe ser un filtro relativo porque se actualizará todos los días.

¡Gracias!

Helpful resources

Announcements
May Power BI Update Carousel

Power BI Monthly Update - May 2026

Check out the May 2026 Power BI update to learn about new features.

Fabric SQL PBI Data Days

Data Days 2026 coming soon!

Sign up to receive a private message when registration opens and key events begin.

New to Fabric survey Carousel

New to Fabric Survey

If you have recently started exploring Fabric, we'd love to hear how it's going. Your feedback can help with product improvements.

Power BI DataViz World Championships carousel

Power BI DataViz World Championships - June 2026

A new Power BI DataViz World Championship is coming this June! Don't miss out on submitting your entry.

Top Kudoed Authors