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

The Power BI DataViz World Championships are on! With four chances to enter, you could win a spot in the LIVE Grand Finale in Las Vegas. Show off your skills.

Reply
Syndicate_Admin
Administrator
Administrator

Fórmula condicional y formato basado en un valor en columna

Tengo la siguiente columna. Me gustaría destacar a cualquier cliente que tenga un nivel de gerente senior y gerente. Así, por ejemplo, me gustaría destacar a los clientes A y C, ya que ambos tienen un nivel de alto nivel y otro de gerente. ¿Cómo lo haría? ¿Sería cambiar la fórmula o algo así? ¿Pueden ayudarme con la fórmula DAX?

ClienteNivelVentas
Cliente AGerente Senior4000
Cliente ADirector4000
Cliente AMayor4000
Cliente BGerente Senior4000
Cliente BMayor4000
Cliente CGerente Senior4000
Cliente CDirector4000
Cliente CMayor4000
Cliente DDirector4000
Cliente DMayor4000
11 REPLIES 11
Syndicate_Admin
Administrator
Administrator

Hola

Archivo PBI adjunto.

Espero que esto ayude.

Ashish_Mathur_0-1739159526309.png

Syndicate_Admin
Administrator
Administrator

Hola @homboy27

Muchas gracias Jihwan_Kim por su pronta respuesta.

Para su pregunta, aquí está el método que proporcioné:

Estos son algunos datos ficticios

"Mesa"

vnuocmsft_0-1738918003809.png

Cree una medida.

HasSeniorManagerAndManager = 
VAR SeniorManagerCount = 
CALCULATE(
    COUNTROWS('Table'), 
    'Table'[Level] = "Senior Manager",
    ALLEXCEPT('Table', 'Table'[Client])
)
VAR ManagerCount = 
CALCULATE(
    COUNTROWS('Table'), 
    'Table'[Level] = "Manager", 
    ALLEXCEPT('Table', 'Table'[Client])
)
RETURN 
IF(
    SeniorManagerCount > 0 && ManagerCount > 0, 
    "Yes", 
    "No"
)

Cree una tabla para mostrar el [Cliente] y filtre los datos donde [HasSeniorManagerAndManager] sea "Sí".

vnuocmsft_1-1738918255615.png

Aquí está el resultado.

vnuocmsft_2-1738918282713.png

Si sigues teniendo problemas, proporciona el resultado deseado. La mejor manera de presentarlo es en forma de tabla.

Saludos

Nono Chen

Si esta publicación ayuda, considere Acéptalo como la solución para ayudar a los demás miembros a encontrarlo más rápidamente.

Gracias que funcionó, tenía otra pregunta, ¿cómo filtraría a alguien que tenga ventas inferiores a 3,000 y luego aún aplicaría el formato condicional?

Hola @homboy27

Solo necesita agregar una condición de sentencia al código de apelación:

'Table'[Sales] > 3000,

Por ejemplo:

Over 3000 HasSeniorManagerAndManager = 
VAR SeniorManagerCount = 
CALCULATE(
    COUNTROWS('Table'), 
    'Table'[Level] = "Senior Manager",
    'Table'[Sales] > 3000,
    ALLEXCEPT('Table', 'Table'[Client])
)
VAR ManagerCount = 
CALCULATE(
    COUNTROWS('Table'), 
    'Table'[Level] = "Manager",
    'Table'[Sales] > 3000,
    ALLEXCEPT('Table', 'Table'[Client])
)
RETURN 
IF(
    SeniorManagerCount > 0 && ManagerCount > 0, 
    "Yes", 
    "No"
)

Aquí está el resultado.

vnuocmsft_0-1739153267746.png

Saludos

Nono Chen

Si esta publicación ayuda, considere Acéptalo como la solución para ayudar a los demás miembros a encontrarlo más rápidamente.

Gracias, funcionó. Usted es increíble. También tenía otra pregunta. Si quisiera extraer métricas como el promedio por empleado por región o el promedio por período por empleado en función de los datos a continuación, ¿cómo lo haría?

ClienteNombre del empleadoVentasCuartoRegión
Cliente AEmpleado A40001Este
Cliente AEmpleado A40002Este
Cliente AEmpleado A40003Este
Cliente BEmpleado B40001Central
Cliente BEmpleado B40002Central
Cliente CEmpleado C40003Oeste
Cliente CEmpleado C40004Oeste
Cliente CEmpleado C40001Oeste
Cliente DEmpleado D40002Este
Cliente DEmpleado D40001Este

Hola @homboy27

Pruebe esto:

Average Sales by Employee by Region = 
CALCULATE(
    AVERAGE('Table'[Sales]),
    ALLEXCEPT('Table', 'Table'[Employee Name], 'Table'[Region])
)

Average Sales by Period by Employee = 
CALCULATE(
    AVERAGE('Table'[Sales]),
    ALLEXCEPT('Table', 'Table'[Quarter], 'Table'[Employee Name])
)

vnuocmsft_0-1739239795416.png

Saludos

Nono Chen

Si esta publicación ayuda, considere Acéptalo como la solución para ayudar a los demás miembros a encontrarlo más rápidamente.

Gracias, por favor vea a continuación. Si hago clic en Este, las ventas totales para el Este son de $ 5k (foto de la izquierda) y hay 2 empleados, por lo que el promedio para el Este sería de 2.5k, no de 1k. ¿Sabes cómo actualizar para eso?

homboy27_0-1739394168503.png

Hola @homboy27

AvgSalesPerEmployeeRegion = 
AVERAGEX(
    SUMMARIZE(
        'Table',
        'Table'[Region],
        'Table'[Employee Name],
        "AvgSales", SUM('Table'[Sales])
    ),
    [AvgSales]
)

vnuocmsft_0-1739433772831.png

Saludos

Nono Chen

Si esta publicación ayuda, considere Acéptalo como la solución para ayudar a los demás miembros a encontrarlo más rápidamente.

Syndicate_Admin
Administrator
Administrator

Hola

No estoy seguro de cómo se ve su modelo semántico, pero intenté crear un archivo pbix de muestra como se muestra a continuación.

Verifique la imagen a continuación y el archivo pbix adjunto.

Jihwan_Kim_1-1738790939454.png

Jihwan_Kim_2-1738791020693.png

color condition: =
VAR _t =
    FILTER (
        CALCULATETABLE (
            SUMMARIZE ( Data, 'Level'[Level] ),
            ALL ( 'Level'[Level], 'Level'[sort_order] )
        ),
        'Level'[Level] IN { "Senior Manager", "Manager" }
    )
RETURN
    IF ( COUNTROWS ( _t ) >= 2, "yellow" )

Eso no funciona para mí. ¿Alguna otra idea?

Por alguna razón no lo acepta.

Helpful resources

Announcements
Las Vegas 2025

Join us at the Microsoft Fabric Community Conference

March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!

FebPBI_Carousel

Power BI Monthly Update - February 2025

Check out the February 2025 Power BI update to learn about new features.

Feb2025 NL Carousel

Fabric Community Update - February 2025

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

Top Solution Authors
Top Kudoed Authors