unir texto separar por partir numeros guiones funciones extraer espacios entre con columnas caracteres caracter excel-formula delimiter separator

excel formula - por - cómo separar texto con múltiples guiones bajos y longitud de valores variable



separar texto en excel formula (3)

a1 = ac_tree_birch_NewYork_ext

a2 = bc_animal_dog_Washington_des

¿Cómo se separa el texto en las celdas por el "_", ya que hay una longitud variable de los valores de celda. Me gustaría usar una fórmula, y no texto a columnas.

Gracias


Si una solución de VBA es aceptable, puede escribir un contenedor alrededor de la función de Split VBA:

Public Function Split2(s As String) As String() Split2 = Split(s, "_") End Function

Luego, en su hoja de trabajo, seleccione (diga) las celdas B1: F1, ingrese

=Split2(A1)

como una función de matriz (CTRL-SHIFT-ENTER), y sale su información.

Espero que ayude.


Esto puede hacerse a través de Flash Fill (Excel 2013+).

Para la primera fila de datos, ingrese su resultado esperado en las celdas siguientes a la derecha. Así es como quieres que se rompan los datos:

Luego seleccione su primera celda de datos de salida y haga clic en Relleno Flash desde la cinta:

Haz esto para las columnas restantes. Esto llenará la columna según el patrón reconocido por Excel dentro de sus datos originales:


Use la función SUSTITUIR para cambiar todos los guiones bajos (por ejemplo, CHAR(95) ) a una gran cantidad de espacios (generalmente la longitud total de la cadena original) y pelar las piezas acolchadas con la función MID . Termine con TRIM y un IFERROR ''envoltorio''.

En B1 como,

=IFERROR(TRIM(MID(SUBSTITUTE($A1, CHAR(95), REPT(CHAR(32), LEN($A1))), (COLUMN(A:A)-1)*LEN($A1)+1, LEN($A1))), TEXT(,))

Llena tanto hacia la derecha como hacia abajo.