Text To Columns - Separate text from number

Copper Contributor

How would I convert Text to Columns that are in different lengths to set up a rule that the text in the column would start wehre a new column would be added?

In addition to this, how would I keep the leading number to move to the next column as well?

And how would I keep the leading #0 if the number starts with Text to Column.PNGa 0?

3 Replies

@KellyPoling  Lo siento es en Español.  (;¬)]>

PasosOperaciónObservaciones

paso 1Insertar fila en A1Selecciona 1:1 y presiona Ctrl+[+] "Signo de suma"
paso 2Añade nombre de columnaEn A1 escribe el nombre "Auxiliar"
paso 3Selecciona A2 
paso 4Convierte en Tabla ExcelCrtl + (signo de suma "+")
paso 5Verifica casilla tiene encabezados = True 
paso 6Aceptar 
paso 7Asigna nombre a la tablaEn la pestaña Diseño Tabla => Sección Propiedades => Casilla de nombre (MiTabla)
paso 8Añade culumna auxiliarEn la celda B1 escribe Auxiliar
paso 9EScribe fórmula en B2=SI(ESNUMERO(IZQUIERDA([@TablaDatos];1)*1);"TxtAux "&[@TablaDatos];[@TablaDatos])
paso 10Crear consultaEn la pestaña Datos => Obtener y Transformar => Desde una Tabla o Rango
paso 11Se abre ventana Power Query 
paso 12Seleciona Columna auxiliar   #"Dividir columna por: transición de caracteres"
= Table.SplitColumn(#"Tipo cambiado", "Auxiliar",
Splitter.SplitTextByCharacterTransition((c) =>
not List.Contains({"0".."9"}, c), {"0".."9"}), {"Auxiliar.1", "Auxiliar.2"}),
paso 13Dividir columna de no número a número 
paso 14Selecciona columna Auxiliar.2 
paso 15Dividir columna de número a no número   #"Dividir columna por: transición de caracteres1"
= Table.SplitColumn(#"Dividir columna por: transición de caracteres",
"Auxiliar.2", Splitter.SplitTextByCharacterTransition({"0".."9"}, (c) => not List.Contains({"0".."9"}, c)), {"Auxiliar.2.1", "Auxiliar.2.2"})
paso 16Cerrar y cargar en 
paso 17Selecciona Tabla => Misma Tabla => celda D1 
paso 18Ahora Tu sabrás que quieres hacer con los datos" 
paso 19Si añades nuevos registros a MiTabla 
paso 20Selecciona cualquier celda de MiTabla2 
paso 21Con el botón izquierdo del Mouse Y selecciona Actualizar 
paso 22Y "La magia ocurre" 

Buen día, @KellyPoling 

 
 

RespAPoly.png

@KellyPoling 

With second question bit easier - just assign Text type to all resulting column (with Text to Columns on 3rd step of the wizard select all columns and assign Text).

 

With separation is harder, afraid some manual work will be required in any case. First, the logic of separation is not formalized. If, for example, you'd like to separate

Casillero del Diablo Sauvignon Blanc Reserva 750 ml on 

Casillero del Diablo | Sauvignon Blanc Reserva | 750 ml

you can't say that text shall be split on each 3rd and 7th space since for each record this logic is different.

 

You may wrap all brands and name by apostrophes , e.g Ctrl+H and Replace All Casillero del Diablo on "Casillero del Diablo". With splitting on columns above will be treated as one word. But that could be a lot of work plus punctuation of names is different ( Casillero del Diablo and CasilleroDel Diablo; 750ml and 750 ml).