Excel - Dividir una columna en Excel en varias columnas

 
Vista:
Imágen de perfil de Luis
Val: 6
Ha disminuido su posición en 11 puestos en Excel (en relación al último mes)
Gráfica de Excel

Dividir una columna en Excel en varias columnas

Publicado por Luis (2 intervenciones) el 19/09/2019 17:26:58
Buenas a todos :)

Necesito saber de qué manera puedo dividir una columna larguísima de celdas en varias columnas que puedan exportarse a .txt o que se sitúen al lado.

No hay un número exacto de filas que pueda tomar para dividir la columna. El único delimitador que hay es una palabra en concreto que se repite por toda la columna y marca el inicio de otra lista de celdas dentro de la columna.

Es decir, si la columna grande tiene 3 veces la palabra "perro", necesito que de ella salgan 3 columnas independientes que comiencen por la palabra "perro". Necesito que el delimitador para la división de la columna sea la palabra "perro" y que aparezca toda la fracción de celdas que hay bajo ella.

Adjunto esta imagen, que es más descriptiva :) Imagen

La diferencia con la imagen es que la columna original es enorme (enormísima) y entre las palabras "perro" no hay el mismo número de celdas. Es aleatorio. Por ello necesito que cada vez que se localice "perro", se trasponga a la derecha.

Muchas gracias!

Espero haberme explicado y que me podáis echar una mano.

Muchísimas gracias :)
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Héctor Madriz
Val: 857
Bronce
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

Dividir una columna en Excel en varias columnas

Publicado por Héctor Madriz (137 intervenciones) el 19/09/2019 21:08:50
Buen día, prueba esto:

1
2
3
4
5
6
7
8
9
10
11
Sub CargarColumnas()
    Delimitador = "Perro"
    Fila = 1: Columna = 1
    For Cont = 1 To ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Row
        If InStr(UCase(Cells(Cont, 1)), UCase(Delimitador)) > 0 Then
           Fila = 1: Columna = Columna + 1
        End If
        Cells(Fila, Columna) = Cells(Cont, 1)
        Fila = Fila + 1
    Next
End Sub

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
4
Comentar
Imágen de perfil de Luis
Val: 6
Ha disminuido su posición en 11 puestos en Excel (en relación al último mes)
Gráfica de Excel

Dividir una columna en Excel en varias columnas

Publicado por Luis (2 intervenciones) el 20/09/2019 09:44:57
Muchas gracias! Funciona perfectamente. Ójala supiera programar como tú.

¿Hiciste algún curso especializado o algo?

Muchas gracias:)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar