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

Find everything you need to get certified on Fabric—skills challenges, live sessions, exam prep, role guidance, and more. Get started

Reply
Syndicate_Admin
Administrator
Administrator

Cambiar de WEEKNUM a rango de tiempo

Hola querida comunidad,

Me gustaría crear una nueva columna en mi tabla de calendario que proporcione el rango de tiempo en lugar del número de semana. Por ejemplo:

Para la semana número 1 de 2023, obtendremos un valor como "02/01 a 08/01".

ChatGPT intentó darme esta solución, que solo funciona durante el primer año 2023:

Rango =
DÓNDE FirstDateOfWeek =
BRIBONA(
FILTRO(
Calendario
Calendario[Semana] = ANTERIOR(Calendario[Semana])
),
Calendario[Fecha]
)
DÓNDE LastDateOfWeek =
MAXX(
FILTRO(
Calendario
Calendario[Semana] = ANTERIOR(Calendario[Semana])
),
Calendario[Fecha]
)
DÓNDE LastDateOfWeekMinusOne =
LastDateOfWeek - 1
DÓNDE LastDateOfYear =
CALCULAR(
..MAX(Calendario[fecha]),
CALENDARIO[Año] = ..MAX(Calendario[Año])
)
DEVOLUCIÓN
"Desde " & FORMATO(FirstDateOfWeek, "dd/MM") & " a " &
SI(
LastDateOfWeek = LastDateOfYear,
FORMATO(LastDateOfWeek, "dd/MM"),
FORMATO(LastDateOfWeekMinusOne, "dd/MM")
)
¿Alguien aquí conoce una forma elegante de proporcionar esta columna de rango para cada año en un calendario muy grande?
Muchas gracias por su lectura,
LZ
3 REPLIES 3
Syndicate_Admin
Administrator
Administrator

Muchas gracias Greg! Tu código funciona muy bien... hasta el cambio de año! Para todas las semanas en 2023 se escribe el rango de tiempo correcto, pero para la primera semana de 2024, el valor de la nueva columna es "01/01 a 31/12". ¿Cómo puedo corregirlo? Si tienes una idea.

Syndicate_Admin
Administrator
Administrator

@LZNPM Probar:

Range = 
    VAR __WeekNum = [WeekNum]
    VAR __Year = YEAR([Date])
    VAR __Min = MINX(FILTER('Dates', [WeekNum] = __WeekNum && YEAR([Date]) = __Year), [Date])
    VAR __Max = MAXX(FILTER('Dates', [WeekNum] = __WeekNum && YEAR([Date]) = __Year), [Date])
    VAR __Return = FORMAT(__Min, "dd/MM") & " to " & FORMAT(__Max, "dd/MM")
RETURN
    __Return
Syndicate_Admin
Administrator
Administrator

@LZNPM Probar:

Range = 
    VAR __WeekNum = [WeekNum]
    VAR __Min = MINX(FILTER('Dates', [WeekNum] = __WeekNum), [Date])
    VAR __Max = MAXX(FILTER('Dates', [WeekNum] = __WeekNum), [Date])
    VAR __Return = FORMAT(__Min, "dd/MM") & " to " & FORMAT(__Max, "dd/MM")
RETURN
    __Return

Helpful resources

Announcements
Sept PBI Carousel

Power BI Monthly Update - September 2024

Check out the September 2024 Power BI update to learn about new features.

September Hackathon Carousel

Microsoft Fabric & AI Learning Hackathon

Learn from experts, get hands-on experience, and win awesome prizes.

Sept NL Carousel

Fabric Community Update - September 2024

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

Top Solution Authors