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

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
craig811
Helper III
Helper III

Elaborar % de aumento o disminución por período

Hola

Estoy seguro de que es fácil, sin embargo, escribo una medida para mostrar la diferencia % entre períodos.

Valor de ajuste del período

20 de enero 30.0000

Feb-20 75,0000

Mar-20 55.0000

Así que necesito escribir una medida para mostrar la diferencia en % de mi valor de ajuste, por lo que el 20 de febrero sería y el aumento de enero-20 y del mar-20 sería una disminución del 20 de febrero al 20 de febrero.

Muchas gracias

4 REPLIES 4
Ashish_Mathur
Super User
Super User

Hola

Pruebe este enfoque:

  1. Cree una tabla de calendario y extraiga el año, el nombre del mes y el número de mes en columnas separadas: Año - año (Calendario [Fecha]), Nombre del mes - FORMAT (Calendario[Fecha], "mmmm"), Número de mes á mes (Calendario [Fecha]). Ordenar el nombre del mes por el número de mes
  2. Cree una relación desde la columna Fecha de los datos de origen hasta la columna Fecha de la Tabla de calendarios
  3. A tu objeto visual, arrastra el nombre Año y Mes de la Tabla de Calendario
  4. Escribir estas medidas

Valor de ajuste: SUM(Datos[Valor de Adj])

Valor de ajuste en el mes anterior: CALCULATE([Valor de ajuste],PREVIOUSMONTH(Calendar[Date]))

Crecimiento del valor de ajuste con respecto al mes anterior : IFERROR([Valor de ajuste]/[ Valor de ajuste en elmes anterior]-1,BLANK())

Espero que esto ayude.


Regards,
Ashish Mathur
http://www.ashishmathur.com
https://www.linkedin.com/in/excelenthusiasts/
dax
Community Support
Community Support

Hola @craig811

También podría intentar hacer referencia a la siguiente expresión. Utilice el código M para cambiar el período hasta la fecha

let
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45W8krM0zUyUNJRMjYAAaVYnWglt9QkiJi5KVzMN7EIImYKFYsFAA==", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type text) meta [Serialized.Text = true]) in type table [Period = _t, #"Adjustment value" = _t]),
    #"Added Custom" = Table.AddColumn(Source, "Period1", each "01-"&[Period]),
    #"Removed Columns" = Table.RemoveColumns(#"Added Custom",{"Period"}),
    #"Changed Type" = Table.TransformColumnTypes(#"Removed Columns",{{"Period1", type date}, {"Adjustment value", Int64.Type}})
in
    #"Changed Type"

A continuación, intente a continuación la medida

Measure = var pre=CALCULATE(SUM('Table'[Adjustment value]), FILTER(ALLSELECTED('Table'[Period1]), MIN('Table'[Period1])=DATEADD('Table'[Period1],1, MONTH))) return if(pre=BLANK(), 0,(SUM('Table'[Adjustment value])-pre)/pre)

Podrías consultar mi muestra para obtener más información.

Saludos
Zoe Zhi

Si este post ayuda, por favor considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

amitchandak
Super User
Super User

Puede usar la inteligencia de tiempo con el calendario de fechas. datesmtd y totalmtd puede que fácilmente

MTD Sales = CALCULATE(SUM(Sales[Sales Amount]),DATESMTD('Date'[Date]))
last MTD Sales = CALCULATE(SUM(Sales[Sales Amount]),DATESMTD(dateadd('Date'[Date],-1,MONTH)))
last MTD (complete) Sales =  CALCULATE(SUM(Sales[Sales Amount]),DATESMTD(ENDOFMONTH(dateadd('Date'[Date],-1,MONTH))))
last year MTD Sales = CALCULATE(SUM(Sales[Sales Amount]),DATESMTD(dateadd('Date'[Date],-12,MONTH)))
last year MTD (complete) Sales =  CALCULATE(SUM(Sales[Sales Amount]),DATESMTD(ENDOFMONTH(dateadd('Date'[Date],-12,MONTH))))

Change % = divide([MTD Sales],[last MTD Sales]) -1

En caso de que sólo tenga mes en un formato dado hacer que sea como

Fecha: "01-" & [Mes] // cambiar el tipo de datos hasta la fecha

Para obtener lo mejor de la función de inteligencia de tiempo. Asegúrese de que tiene un calendario de fechas y se ha marcado como la fecha en la vista de modelo. Además, únase a él con la columna de fecha de su hecho/s. Consulte:
https://radacad.com/creating-calendar-table-in-power-bi-using-dax-functions
https://www.archerpoint.com/blog/Posts/creating-date-table-power-bi
https://www.sqlbi.com/articles/creating-a-simple-date-table-in-dax/

MFelix
Super User
Super User

Hola @craig811 ,

Es necesario crear una medida similar a esta:

% increase / decrease =
DIVIDE (
    SUM ( 'Table'[Adjustment Value] );
    CALCULATE (
        TOTALMTD (
            SUM ( 'Table'[Adjustment Value] );
            DATEADD ( 'Table'[Period]; -1; MONTH )
        )
    )
) - 1

Regards

Miguel Félix


Did I answer your question? Mark my post as a solution!

Proud to be a Super User!

Check out my blog: Power BI em Português



Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

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

April Fabric Community Update

Fabric Community Update - April 2024

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

Top Kudoed Authors