Forum Discussion
Primer viernes de cada mes - Power Query
- 4 years ago
@mb0307 mi mal, ¡no entendí tu pregunta correctamente! Puede agregar una columna personalizada basada en su columna Fecha y obtener el primer viernes de cada mes para su tabla de calendario:
Date.StartOfWeek(#date(Date.Year([Date_Key]),Date.Month([Date_Key]),7),Day.Friday)o bien, puede crear una tabla con los últimos 12 meses y agregar una columna personalizada para obtener el primer viernes correspondiente del mes:
let Dates = Table.FromList( List.Generate( ()=> [Month Start = Date.StartOfMonth(Date.AddMonths(DateTime.LocalNow(),-12)), idx = 11], each [idx] >= 0, each [Month Start = Date.StartOfMonth(Date.AddMonths(DateTime.LocalNow(),-[idx])), idx = [idx]-1], each [Month Start]), Splitter.SplitByNothing(),{"Month Start"}), dateType = Table.TransformColumnTypes(Dates,{"Month Start", Date.Type}), #"Added Custom" = Table.AddColumn(dateType, "First Friday", each Date.StartOfWeek(#date(Date.Year([Month Start]),Date.Month([Month Start]),7),Day.Friday)) in #"Added Custom"¡Espero que esta respuesta resuelva su problema!
Si necesita ayuda adicional, por favor @ me en su respuesta.
Si mi respuesta le proporcionó una solución, considere marcarla como una solución ✔️ o darle un kudoe 👍
¡Gracias!
¡También puedes echar un vistazo a mi LinkedIn!
Saludos
Gonçalo Geraldes - 4 years ago
@mb0307 oye! ¡No hay problema en absoluto! El código es bastante similar en realidad:
let Dates = Table.FromList( List.Generate( ()=> [Month End = Date.EndOfMonth(Date.AddMonths(DateTime.LocalNow(),-12)), idx = 11], each [idx] >= 0, each [Month End = Date.EndOfMonth(Date.AddMonths(DateTime.LocalNow(),-[idx])), idx = [idx]-1], each [Month End]), Splitter.SplitByNothing(),{"Month End"}), dateType = Table.TransformColumnTypes(Dates,{"Month End", Date.Type}), #"Added Custom" = Table.AddColumn(dateType, "Last Friday", each Date.AddDays([Month End], -Date.DayOfWeek([Month End],Day.Friday))) in #"Added Custom"Para obtener ayuda adicional, por favor @ me en su respuesta!
¡También puedes echar un vistazo a mi LinkedIn!
Saludos
Gonçalo Geraldes
@goncalogeraldes siento preguntar de nuevo, ¿qué pasa si quiero extraer los datos del ÚLTIMO viernes del mes, por favor? mi requisito cambió a Último viernes del mes. gracias de antemano si puedes ayudar.
@mb0307 oye! ¡No hay problema en absoluto! El código es bastante similar en realidad:
let
Dates = Table.FromList(
List.Generate(
()=> [Month End = Date.EndOfMonth(Date.AddMonths(DateTime.LocalNow(),-12)), idx = 11],
each [idx] >= 0,
each [Month End = Date.EndOfMonth(Date.AddMonths(DateTime.LocalNow(),-[idx])), idx = [idx]-1],
each [Month End]),
Splitter.SplitByNothing(),{"Month End"}),
dateType = Table.TransformColumnTypes(Dates,{"Month End", Date.Type}),
#"Added Custom" = Table.AddColumn(dateType, "Last Friday", each Date.AddDays([Month End], -Date.DayOfWeek([Month End],Day.Friday)))
in
#"Added Custom"Para obtener ayuda adicional, por favor @ me en su respuesta!
¡También puedes echar un vistazo a mi LinkedIn!
Saludos
Gonçalo Geraldes