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

Enhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends August 31st. Request your voucher.

Reply
Syndicate_Admin
Administrator
Administrator

Recuento de funciones de conmutación

Hola

Estoy tratando de hacer un recuento de las funciones a continuación. Todos tienen las mismas características ya que comienzan con lo mismo, como se ve a continuación.

Me gustaría que devolviera el recuento de cuentas que comienzan con A, B y C. Así que en este caso 3, 3 y 3.

Tengo el siguiente código:

Accounts_TOP = VAR Top_Account_Name = External[TOP_ACCOUNT_NAME] RETURN SWITCH(TRUE(), Top_Account_Name en {"A1","A2","A3"}, "A") Top_Account_Name en {"B1","B2","B3"}, "B") Top_Account_Name en {"C1","C2","C3"}, "C")

1 ACCEPTED SOLUTION

¿@veakin

Este escenario es fácil, puede probar esta medida [contar] y no necesita crear otra tabla,

vxiaotang_1-1637200553573.png

count = CALCULATE(COUNT('Table'[name]),ALLEXCEPT('Table','Table'[name]))

vxiaotang_2-1637200625025.png

Si esta respuesta ayuda, ¿podría aceptarla como solución? ¡Gracias! 🙂

Saludos

Equipo de soporte de la comunidad _Tang

Si esta publicación ayuda,considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.

View solution in original post

17 REPLIES 17
Syndicate_Admin
Administrator
Administrator

Todavía no devuelve la información deseada desafortunadamente.

La medida de conteo anterior cuenta con el nombre. Ahora mismo tengo los datos en una tabla dinámica con Nombre en filas y luego en los valores tengo número/cantidad de valor.

Syndicate_Admin
Administrator
Administrator

Además, todavía no aceptará el espacio entre ""

SEARCH(" ",'Table'[name]&" ")

Syndicate_Admin
Administrator
Administrator

No funciona.... Devuelve algunos números completamente equivocados.

La función de valor en mi conjunto de datos es un recuento del colomn, así que así:

Robot AS3323
Robot AS5433
Robot AS9891
Robot OP1011
Máquina KJ4123
Máquina KJ7532
Máquina LL1123
Máquina LL1301
VehículoHA4311


Y luego, filtrando el recuento del código, obtengo:

Robot AS3
Robot OP1
Máquina KJ2
Máquina LL2
VehículoHA1

Debería haber dicho esto antes ... Arrepentido

¿@veakin

Este escenario es fácil, puede probar esta medida [contar] y no necesita crear otra tabla,

vxiaotang_1-1637200553573.png

count = CALCULATE(COUNT('Table'[name]),ALLEXCEPT('Table','Table'[name]))

vxiaotang_2-1637200625025.png

Si esta respuesta ayuda, ¿podría aceptarla como solución? ¡Gracias! 🙂

Saludos

Equipo de soporte de la comunidad _Tang

Si esta publicación ayuda,considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.

Syndicate_Admin
Administrator
Administrator

¿No podría hacer la función de recuento solo para los valores que comienzan con Robot, por ejemplo? Cuz hay algunos valores sin espacio entre ellos, pero también solo tienen una fila en el conjunto de datos ...

Con lo anterior, podría tener una función que solo tome filas que contengan robots, máquinas y componentes si eso tiene sentido y luego si el resto del conjunto de datos podría permanecer igual y mostrarse al mismo tiempo.
Así que esta tabla:

Robot AS3
Robot BS5
Robot KL6
Robot OP10
Máquina KJ4
Máquina GH7
Máquina LL11
Máquina TR130
VehículoHA4


Se convierte en esto:

Robot24
Máquina152
VehículoHa4

Hay @veakin

En este escenario, puede usar esto,

NameList2 = DISTINCT(SELECTCOLUMNS('Table',"name",LEFT('Table'[name],SEARCH(" ",'Table'[name]&" ")-1)))
count2 = CALCULATE(SUM('Table'[value]),FILTER(ALL('Table'),LEFT('Table'[name],SEARCH(" ",'Table'[name]&" ")-1)=MIN('NameList2'[name]) ))

vxiaotang_0-1637132050037.png

Saludos

Equipo de soporte de la comunidad _Tang

Si esta publicación ayuda,considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.

Syndicate_Admin
Administrator
Administrator

¿Cuál debería ser entonces el Nonfoundvalue?

Hay @veakin

Lo siento, no lo dejé claro, quiero decir que también puede agregar un NotFoundValue para verificar si no hay espacio en algún valor en sus datos.

Para resolver el error, la solución es limpiar sus datos en primer lugar si no hay espacio en el nombre como abajo,

vxiaotang_0-1636624635363.png

Saludos

Equipo de soporte de la comunidad _Tang

Si esta publicación ayuda,considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.

Syndicate_Admin
Administrator
Administrator

Es como si sumase correctamente, pero no distingue entre los valores. Así que solo suma hasta 700, sin dar ninguna etiqueta.

Syndicate_Admin
Administrator
Administrator

¿Es lo mismo?

No puedo llamar a la función con un espacio entre "" en la función de búsqueda. me da 'No se encontró la búsqueda'

Hay @veakin

Puede que no haya espacio en alguna 'tabla' [nombre], verifique sus datos.

puede agregar un NotFoundValue en Search() para comprobarlo.

vxiaotang_0-1636539068021.png

Si esto aún no resuelve su problema, ¿es posible compartir su archivo de muestra? lo comprobaremos.

Saludos

Equipo de soporte de la comunidad _Tang

Si esta publicación ayuda,considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.

Syndicate_Admin
Administrator
Administrator

Hay @veakin

¿Es este resultado similar a lo que quieres?

vxiaotang_0-1636435633142.png

En caso afirmación, puede probar esto,

1. crear una tabla NameList incluyendo nombres, aquí hay 2 formas de crearla,

(1) DAX

NameList = DISTINCT(SELECTCOLUMNS('Table',"name",LEFT('Table'[name],SEARCH(" ",'Table'[name])-1)))

(2) en PQ Editor

let
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WCspPyi9RcAxWitWBcZyQOd4+SBz/ADDHNzE5IzMvVcHbC4Xr7oHC9fFB4YYEgblhqRmZyTmpCh6OKFznMKXYWAA=", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [name = _t]),
    #"Split Column by Delimiter" = Table.SplitColumn(Source, "name", Splitter.SplitTextByDelimiter(" ", QuoteStyle.Csv), {"name.1", "name.2"}),
    #"Changed Type" = Table.TransformColumnTypes(#"Split Column by Delimiter",{{"name.1", type text}, {"name.2", type text}}),
    #"Removed Columns" = Table.RemoveColumns(#"Changed Type",{"name.2"}),
    #"Removed Duplicates" = Table.Distinct(#"Removed Columns"),
    #"Renamed Columns" = Table.RenameColumns(#"Removed Duplicates",{{"name.1", "name"}})
in
    #"Renamed Columns"

2. crear la medida

count = CALCULATE(SUM('Table'[value]),FILTER(ALL('Table'),LEFT('Table'[name],SEARCH(" ",'Table'[name])-1)=MIN('NameList'[name]) ))

Saludos

Equipo de soporte de la comunidad _Tang

Si esta publicación ayuda,considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.

Hola
¡Gracias por su respuesta!
La función no parece funcionar para mí....
Quiero decir, puedo ver que la función suma la cantidad correcta. Pero cuando grafino los valores con Nombre como fila, no muestra el recuento como en la imagen de arriba.

Lista de nombres = DISTINTO(SELECCIONARCOLUMNAS(Coches, "Nombre de los coches",IZQUIERDA('Coches'[NOMBRE DE LOS COCHES],BUSCAR("",'Coches'[NOMBRE DE LOS COCHES])-1)))
¿Mi código es incorrecto?

Hay @veakin

¿Ayudará?

vxiaotang_0-1636445538780.png

Namelist = DISTINCT(SELECTCOLUMNS('Cars', "Name of Cars",LEFT('Cars'[NAME OF CARS],SEARCH(" ",'Cars'[NAME OF CARS])-1)))

Saludos

Equipo de soporte de la comunidad _Tang

Si esta publicación ayuda,considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.

Syndicate_Admin
Administrator
Administrator

Hmmm.. No parece funcionar.
La cuestión es que tengo una mesa que se ve así:

Robot AS3
Robot BS5
Robot KL6
Robot OP10
Máquina KJ4
Máquina GH7
Máquina LL11
Máquina TR130
Vehículo HA4
CV del vehículo17


Y luego me gustaría una mesa, que solo cuenta así:

Robot24
Máquina152
Vehículo21
Syndicate_Admin
Administrator
Administrator

@veakin , Prueba como

Accounts_TOP = VAR Top_Account_Name = External[TOP_ACCOUNT_NAME] RETURN SWITCH(TRUE(), left(Top_Account_Name,1) en {"A","B","C"}, left(Top_Account_Name,1))

Helpful resources

Announcements
July 2025 community update carousel

Fabric Community Update - July 2025

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

July PBI25 Carousel

Power BI Monthly Update - July 2025

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

Top Solution Authors
Top Kudoed Authors