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
Anonymous
Not applicable

Cambiar el color de fondo de la tarjeta en función de la medida calculada múltiple

Hola a todos

Estoy tratando de cambiar el color de fondo en una tarjeta en función de la medida calculada.

Lo que tengo:

Nombre del empleadoGéneroCity_IndexCountry_Index
Zenmasculino-8750
Kimmasculino036
SharynMujer-4522
LexiMujer-6630
MariaMujer-911
Johnmasculino-7011
Shanmasculino-230

Medida media calculada:
Average_City_Index: CALCULATE(AVERAGE(Table[City_Index), FILTER(Table,Table[City_Index] <> 0 ))
Average_Country_Index: CALCULATE(AVERAGE(Table[Country_Index), FILTER(Table,Table[Country_Index] <> 0 ))

Medir para cambiar de color:

Condition_Measure = MAXX(Table,
    IF([Average_City_Index] >= -50 && [Average_City_Index] <= -1, 1,
        IF([Average_City_Index] >= -75 && [Average_City_Index] <= -51, 2,
            IF([Average_City_Index] >= -100 && [Average_City_Index] <= -76, 3, 4))))

Condición de antecedentes

screen1.PNG

Resultado:

Cuando creo una tarjeta para obtener el recuento de empleados y luego la filtro en función del género en la sección de filtro. El valor que obtengo es 4 que es correcto porque hay 4 machos, pero el color de fondo es azul claro en lugar de amarillo, el promedio de city_index para el macho es -60.

1 ACCEPTED SOLUTION
v-shex-msft
Community Support
Community Support

Hola @nikeshv,

Creo que puede utilizar el modo 'valor de campo' y directo para devolver código de color y utilizar en el formato de color, debería ser más simple que el modo de regla.

Usar formato condicional en tablas

BTW, función maxx parece no ser necesario en su fórmula, después de quitar esto y modificar su fórmula, funciona bien de mi lado.

Color = 
VAR avgCity =
    CALCULATE ( AVERAGE ( T1[City_Index] ), T1[City_Index] <> 0 )
RETURN
    IF (
        avgCity >= -50
            && avgCity <= -1,
        "Green",
        IF (
            avgCity >= -75
                && avgCity <= -51,
            "Yellow",
            IF ( avgCity >= -100 && avgCity <= -76, "Red", "light Blue" )
        )
    )

7.png

8.png

Si arriba no ayuda, por favor comparta información más detallada para ayudarnos a aclarar su escenario.

Cómo obtener respuestas a su pregunta rápidamente

saludos

Xiaoxin Sheng

Community Support Team _ Xiaoxin
If this post helps, please consider accept as solution to help other members find it more quickly.

View solution in original post

3 REPLIES 3
v-shex-msft
Community Support
Community Support

Hola @nikeshv,

Creo que puede utilizar el modo 'valor de campo' y directo para devolver código de color y utilizar en el formato de color, debería ser más simple que el modo de regla.

Usar formato condicional en tablas

BTW, función maxx parece no ser necesario en su fórmula, después de quitar esto y modificar su fórmula, funciona bien de mi lado.

Color = 
VAR avgCity =
    CALCULATE ( AVERAGE ( T1[City_Index] ), T1[City_Index] <> 0 )
RETURN
    IF (
        avgCity >= -50
            && avgCity <= -1,
        "Green",
        IF (
            avgCity >= -75
                && avgCity <= -51,
            "Yellow",
            IF ( avgCity >= -100 && avgCity <= -76, "Red", "light Blue" )
        )
    )

7.png

8.png

Si arriba no ayuda, por favor comparta información más detallada para ayudarnos a aclarar su escenario.

Cómo obtener respuestas a su pregunta rápidamente

saludos

Xiaoxin Sheng

Community Support Team _ Xiaoxin
If this post helps, please consider accept as solution to help other members find it more quickly.
amitchandak
Super User
Super User

@nikeshv, no muy claro. Puede crear una medida de color y usarla en formato condicional seleccionando la opción "Valor de campo"

Color sales = if(AVERAGE(Sales[Sales Amount])<170,"green","red")
Color Year = if(FIRSTNONBLANK(Table[Year],2014) <=2016,"lightgreen",if(FIRSTNONBLANK(Table[Year],2014)>2018,"red","yellow"))

Color  = if(FIRSTNONBLANK(Table[Year],2014) <=2016 && AVERAGE(Sales[Sales Amount])<170 
,"lightgreen",if(FIRSTNONBLANK(Table[Year],2014)>2018,"red","yellow"))
Color sales = if([Sales Today] -[sales yesterday]>0,"green","red")

color =
switch ( true(),
FIRSTNONBLANK(Table[commodity],"NA") ="commodity1" && sum(Table[Value]) >500,"lightgreen",
FIRSTNONBLANK(Table[commodity],"NA") ="commodity2" && sum(Table[Value]) >1000,"lightgreen",
// Add more conditions
"red"
)

https://radacad.com/dax-and-conditional-formatting-better-together-find-the-biggest-and-smallest-num...
https://docs.microsoft.com/en-us/power-bi/desktop-conditional-table-formatting#color-by-color-values
https://community.powerbi.com/t5/Desktop/FORMAT-icon-set-for-use-in-a-data-card/td-p/811692

lbendlin
Super User
Super User

Sabe que puede proporcionar colores directamente en su medida y luego usar valores de campo en lugar de reglas para controlar el formato, ¿verdad?

Helpful resources

Announcements
September Hackathon Carousel

Microsoft Fabric & AI Learning Hackathon

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

Top Solution Authors