Reply
Syndicate_Admin
Administrator
Administrator
Syndicated - Inbound

Comparación de períodos anteriores

Source Community: Power BI | Source Author Name: Shawry

Hola

Quiero mostrar "Últimas 6 semanas" en función del final de la semana, y también mostrar "Últimas 6 semanas del período anterior" para que podamos comparar cómo fueron exactamente las mismas 6 semanas el año anterior. Tengo la siguiente fórmula, que funciona para las "Últimas 6 semanas" pero no para el "Último período de 6 semanas anteriores".

Supongo que tiene que ver con la lógica de:

'Fecha'[Año] = AÑO(HOY()) - 1 &&
'Fecha'[Número de semana] - 'Fecha'[TodayWeekNum] > 52 - 6

Past 6 Weeks or Prior Period = 
IF(
    (
        'Date'[TodayWeekNum] - 'Date'[Week Number] < 7 &&
        'Date'[TodayWeekNum] - 'Date'[Week Number] >= 0 &&
        'Date'[Year] = YEAR(TODAY())
    ),
    "Last 6 weeks",
    IF(
        'Date'[Year] = YEAR(TODAY()) - 1 &&
        'Date'[Week Number] >= 52 - (6 - 'Date'[TodayWeekNum]),
        "Prior Period Comparison",
        "False"
    )
)

¿Alguien puede ayudar, por favor? ¡Gracias!

2 REPLIES 2
Syndicate_Admin
Administrator
Administrator

Source Community: Power BI | Source Author Name: v-yangliu-msft
Syndicated - Inbound

Gracias por la respuesta de @lbendlin , permítanme proporcionar otra idea:

Hola @Shawry ,

Estos son los pasos que puedes seguir:

1. Crear columna calculada.

Past 6 Weeks or Prior Period =
var _today=TODAY()
var _weektoday=WEEKNUM(_today,2)
var _currentmaxdate=MAXX(FILTER(ALL('Table'),YEAR('Table'[Date])=YEAR(_today)&&'Table'[Week]=_weektoday-1),[Date])
var _currentmindate=MINX(FILTER(ALL('Table'),YEAR('Table'[Date])=YEAR(_today)&&'Table'[Week]=_weektoday-6),[Date])
var _lastmaxdate=MAXX(FILTER(ALL('Table'),YEAR('Table'[Date])=YEAR(_today)-1&&'Table'[Week]=_weektoday-1),[Date])
var _lastmindate=MINX(FILTER(ALL('Table'),YEAR('Table'[Date])=YEAR(_today)-1&&'Table'[Week]=_weektoday-6),[Date])
return
SWITCH(
    TRUE(),
    'Table'[Date]>=_currentmindate&&'Table'[Date]<=_currentmaxdate,"Last 6 weeks",
    'Table'[Date]>=_lastmindate&&'Table'[Date]<=_lastmaxdate,"Last 6 weeks prior period","False")

2. Resultado:

vyangliumsft_0-1717751479130.png

Saludos

Liu Yang

Si esta publicación ayuda, considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente

Syndicate_Admin
Administrator
Administrator

Source Community: Power BI | Source Author Name: lbendlin
Syndicated - Inbound

Los años y las semanas son incompatibles. Si desea comparar de igual a igual, debe usar TODAY()-35 con TODAY() para el período actual y TODAY-399 con TODAY()-364 para el período anterior.

avatar user

Helpful resources

Announcements
Las Vegas 2025

Join us at the Microsoft Fabric Community Conference

March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!

FebPBI_Carousel

Power BI Monthly Update - February 2025

Check out the February 2025 Power BI update to learn about new features.

Feb2025 NL Carousel

Fabric Community Update - February 2025

Find out what's new and trending in the Fabric community.

Top Solution Authors (Last Month)
Top Kudoed Authors (Last Month)