Microsoft Fabric Community Conference 2025, March 31 - April 2, Las Vegas, Nevada. Use code FABINSIDER for a $400 discount.
Register nowGet inspired! Check out the entries from the Power BI DataViz World Championships preliminary rounds and give kudos to your favorites. View the vizzies.
Buenas, necesito hacer una medida para calcular el crecimiento o decrecimiento de clientes entre fechas.
Por un lado tengo una tabla con el valor agrupado diario de clientes por fecha y por comercial. Esta tabla tiene 2 relaciones, a una tabla calendario y a la tabla de comerciales.
Necesito calcular el crecimiento entre fechas con un Slicer, en donde yo filtre las fechas y me de el crecimiento entre esas fechas. La formula es sencilla, (cliente finales - clientes iniciales), el problema viene cuando los clientes iniciales deben ser los del dia anterior a la fecha inicial del filtro, ya que la formula del crecimiento entre las dos fechas del filtro ya la tengo. Voy a intentar explicarlo con datos:
- Quiero Aplicar un filtro que me marque el crecimiento del 01/04/2024 al 30/04/2024
- Los datos que tengo son los siguientes:
El BI con las formulas usadas me esta dando el crecimiento de la ultima columna, el cual es erroneo pues esta omitiendo variacion que va desde el ultimo dia del anterior al primero de mes del filtro. El dato que busco es poder sacar el crecimiento de la columna "Crecimiento Mensual" que si esta teniendo en cuenta la variacion de ese primer dia. Logicamente esto es quiero llevarlo tambien al crecimiento Diario.
La tabla tiene los siguientes nombres, por si os es mas facil, donde CUPs Neto seria la variable para el dato que busco.
Espero haberme explicado bien, muchas gracias.
Hola
Por lo que tengo entendido, necesita que el crecimiento no se vea afectado por la fecha inicial en la cortadora, no pude averiguar si era un crecimiento mensual o un crecimiento diario, así que hice cuatro columnas:
Month_Year = MONTH('Dataset'[Date]) & "/" & YEAR('Dataset'[Date])
Monthly_Growth_Within_Month =
VAR Client_Last_Day = CALCULATE(
SUM('Dataset'[N of clientes]),
FILTER(
ALL('Dataset'),
EARLIER('Dataset'[Month_Year]) = 'Dataset'[Month_Year] && ENDOFMONTH('Dataset'[Date]) = 'Dataset'[Date]
)
)
VAR Client_First_Day = CALCULATE(
SUM('Dataset'[N of clientes]),
FILTER(
ALL('Dataset'),
EARLIER('Dataset'[Month_Year]) = 'Dataset'[Month_Year] && STARTOFMONTH('Dataset'[Date]) = 'Dataset'[Date]
)
)
RETURN Client_Last_Day-Client_First_Day
Monthly_Growth_Between_Months =
VAR LAST_DAY_PREVIOUS_MONTH = LASTDATE(PREVIOUSMONTH('Dataset'[Date]))
VAR Client_Last_Day_Previous_month = CALCULATE(
SUM('Dataset'[N of clientes]),
FILTER(
ALL('Dataset'),
LAST_DAY_PREVIOUS_MONTH = 'Dataset'[Date]
)
)
VAR Client_Last_Day_Current_Month = CALCULATE(
SUM('Dataset'[N of clientes]),
FILTER(
ALL('Dataset'),
EARLIER('Dataset'[Month_Year]) = 'Dataset'[Month_Year] && ENDOFMONTH('Dataset'[Date]) = 'Dataset'[Date]
)
)
return Client_Last_Day_Current_Month-Client_Last_Day_Previous_month
Daily_Growth =
var Current_Date = 'Dataset'[Date]
var Previous_Date = MAXX(FILTER(ALL('Dataset'[Date]), 'Dataset'[Date] < Current_Date), 'Dataset'[Date])
var Previous_Value = MAXX(FILTER('Dataset', 'Dataset'[Date] = Previous_Date), 'Dataset'[N of clientes])
return 'Dataset'[N of clientes]-Previous_Value
La tabla de resultados
Buenas, muchas gracias por la respuesta. El objetivo es llegar a tu columna Daily_Growth para que luego funcione el filtro de crecimiento por cualquier fecha del slicer. El problema es que yo creo que debe ser una medida y no una columna, para que tambien funcionen todas las segmentaciones. Mi tabla de datos tiene las siguientes segmentaciones y necesito obtener las variaciones en CUPs Neto por cada uno de los campos de la tabla:
Muchas gracias por la aportación.
Un saludo
March 31 - April 2, 2025, in Las Vegas, Nevada. Use code FABINSIDER for a $400 discount!
Check out the February 2025 Power BI update to learn about new features.