March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Early bird discount ends December 31.
Register NowBe one of the first to start using Fabric Databases. View on-demand sessions with database experts and the Microsoft product team to learn just how easy it is to get started. Watch now
Hola comunidad PowerBI,
Estoy intentando crear una columna personalizada que toma la última letra alfabética de otra columna.
Así que por ejemplo tengo una columna donde los valores terminan en cosas como "xxxxA" xxxxA1" "xxxxA2" "xxxxB" "xxxxB1" etc.
Quiero hacer una columna que recoja la última letra de esa columna e informe de eso. Intenté Text.End pero eso sólo toma el último carácter, no letra.
Agradecido por cualquier ayuda 🙂
Solved! Go to Solution.
Hola @GavinR87
Puede agregar una columna personalizada en Power Query Editor con esta sintaxis
=List.Last( List.Intersect( { Text.ToList( [Column1] ), {"a".."z"} } ) )
Hola @GavinR87
No, esto es lo que se supone que debe hacer cuando se introduce la fórmula en Agregar columna personalizada, el problema es con el script que proporcioné, se olvidó de lo importante acerca de M su mayúsculas y minúsculas, utilizar esto en su lugar debe hacer el truco.
= Table.AddColumn(Source, "Custom", each List.Last( List.Intersect( { Text.ToList( [Detector] ), {"a".."z"} & {"A".."Z"} } ) ) )
ver el archivo adjunto para ref
Hola @GavinR87
Puede agregar una columna personalizada en Power Query Editor con esta sintaxis
=List.Last( List.Intersect( { Text.ToList( [Column1] ), {"a".."z"} } ) )
Hola @Mariusz
Muchas gracias por la respuesta.
He utilizado su sugerencia, pero por alguna razón está generando "null" en cada celda de la columna. No me está dando ningún error sólo la venta null
También anoté cuando agrego la columna de cliente, ingreso la fórmula, haga clic en OK, cambia a la siguiente - no estoy seguro de si ese es el problema?
= Table.AddColumn(#"Renamed Columns4", "Carriageway", each List.Last( List.Intersect( { Text.ToList( [Detector] ), {"a".."z"} } ) ))
Disculpas Sigo siendo un completo novato en todo esto!
Hola @GavinR87
No, esto es lo que se supone que debe hacer cuando se introduce la fórmula en Agregar columna personalizada, el problema es con el script que proporcioné, se olvidó de lo importante acerca de M su mayúsculas y minúsculas, utilizar esto en su lugar debe hacer el truco.
= Table.AddColumn(Source, "Custom", each List.Last( List.Intersect( { Text.ToList( [Detector] ), {"a".."z"} & {"A".."Z"} } ) ) )
ver el archivo adjunto para ref
Creo que probablemente tenías tus cartas en Mayúsculas. Reemplazar un.. z a A.. Z
saludos
Victor
¡Doh! ¡Eso fue todo!
Muchas gracias a todos - realmente aprehenicado.
Hola @GavinR87 ,
Si entiendo su pregunta correctamente, su salida requerida de la entrada proporcionada es - A, A1, A2, B, B1
Teniendo en cuenta que su columna de inout siempre tiene 4 'x' antes del valor requerido, es decir, 'xxxx'
Puede lograrlo en el editor de consultas.
Esto le dará la salida deseada.
Si esto ayuda y resuelve el problema, apreciar un Kudos y marcarlo como una solución! 🙂
Gracias
Pragati
Hola Pragati,
¡Muchas gracias por la respuesta rápida!
Tal vez no me haya explicado muy bien.
Quiero que la nueva columna extraiga sólo la última letra, así que en mi ejemplo la nueva columna consistiría simplemente en una "A" o una "B", independientemente de si la columna anterior terminó en "xxA" "xxA1" o incluso "xxxxA1234", me gustaría que la salida de esos 3 en la nueva columna fuera simplemente "A".
Espero que esto tenga algún sentido 🙂
Gracias
March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!
Your insights matter. That’s why we created a quick survey to learn about your experience finding answers to technical questions.
Arun Ulag shares exciting details about the Microsoft Fabric Conference 2025, which will be held in Las Vegas, NV.