Macro para trasponer varias matrices consecutivas a una columna

Tengo una planilla donde tengo varias matrices de 8x6 consecutivas hacia abajo separadas por una fila. La cantidad de matrices pueden ser variables (no las dimensiones) a partir de la celda D2 y necesito trasponer todos los datos a la columna A sin dejar espacios.

Utilizo Excel 2010

Respuesta
2

Ayudaría mucho si pones dos ejemplos de tus matrices, cómo las tienes y cómo las quieres.

Dices que las matrices son de 8x6, ¿pero 8 filas por 6 columnas ó 8 columnas por 6 filas?

Las quieres en la columna A, ¿pero ahora las quieres 6x8? ¿O quieres que todos los datos de se pasen de la A1 a la A en adelante?

Por eso digo que unos ejemplos de cómo está y cómo los quieres ayudarían mucho, si puedes poner los ejemplos en imagen ayudarían más.

Hola Dante, mira las matrices son de 8 filas por 6 columnas algo así:

          2  3   4   5   6  2 

          1  5    3   5   9  0

          3   3   1    4   6  7

          .

          . 

Cuando termina la matriz de 8 filas hay una fila en blanco y luego otra matriz igual a la anterior pueden ser por matrices. En la columna A necesitaría el siguiente resultado:

2

3

4

5

6

2

1

5

3

5

9

0

.

.

.

Sucesivamente hasta trasponer todas las matrices

Espero haber sido más claro

Muchas gracias

Te anexo la macro

Sub transponer()
'Por.Dante Amor
    u = ActiveSheet.UsedRange.Rows(ActiveSheet.UsedRange.Rows.Count).Row
    j = 1
    Columns("A").ClearContents
    For Each c In Range("D2").Resize(u, 6)
        If c.Value <> "" Then
            Cells(j, "A") = c.Value
            j = j + 1
        End If
    Next
End Sub

Saludos.Dante Amor

No olvides valorar la respuesta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas