Forum Discussion
Syndicate_Admin
3 years agoAdministrator
Weekofyear no funciona
Me dice que el 1 de enero de 2023 es la semana 1, no es la semana 53.
Estoy en Europa.
¿Qué corrección puedo usar como columna personalizada en el editor de consultas?
Syndicate_Admin
3 years agoAdministrator
Hola
Si desea crear una columna con el número de semana ISO en su tabla de fechas, aquí hay una fórmula paso a paso para calcular el número de semana según ISO (DateRef es la columna con la fecha en la tabla de fechas):
//Calculate week num ISO (Europe) in 4 steps
//1. Calculate Thursday of week
InsertCurrThursday = Table.AddColumn(InsertMonthEnding, "CurrThursday", each Date.AddDays([DateRef], -Date.DayOfWeek([DateRef],1) + 3), type date),
//2. Calculate 1st january of the year (cf step 1)
InsertFirstJan = Table.AddColumn(InsertCurrThursday, "FirstJan", each#date(Date.Year([CurrThursday]),1,1),type date),
//3. Calculate number of days betweeen thursday and 1st january
// (cf step 1 and 2)
InsertDuration= Table.AddColumn(InsertFirstJan, "Duration", each Duration.Days(Duration.From([CurrThursday] - [FirstJan])), type number),
//4. Divide the number of days from step 3 by 7
//round down and add 1
InsertISOWeekNum = Table.AddColumn(InsertDuration, "NumSemISO", each Number.RoundDown([Duration]/7)+1),
ChangeType5=Table.TransformColumnTypes(InsertISOWeekNum,{{"NumSemISO", Int64.Type}}),
Format2Chiffres=Table.AddColumn(ChangeType5, "SemaineISO", each Number.ToText([NumSemISO],"D2"), type text),// D2 means format with 2 Digits
//Delete unusefull columns
RemovedColumns = Table.RemoveColumns(Format2Chiffres, {"CurrThursday","FirstJan","Duration", "NumSemISO"})
Espero que ayude