Excel - redistribuir columna larga en varias para imprimir

   
Vista:

redistribuir columna larga en varias para imprimir

Publicado por Luciano de Samosata (4 intervenciones) el 02/09/2015 12:06:16
Buenos días. Tengo que utilizar a menudo una larga columna de datos, que para imprimir me gustaría tenerla repartida en varias columnas, de forma que aprovechara el papel. Para unas 12000 filas, por ejemplo, me gustaría redistribuirlas en 8 columnas de 55 filas, que aproximadamente es como llena todo un A-4. Está el clásico cortar y pegar, pero a menudo la fórmula se recalcula y varían los datos. ¿Hay algún camino para esto?
Gracias y un saludo.
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

redistribuir columna larga en varias para imprimir

Publicado por yktu (4 intervenciones) el 02/09/2015 20:48:46
publica un mail y te contacto
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

redistribuir columna larga en varias para imprimir

Publicado por manolo (12 intervenciones) el 03/09/2015 02:09:56
Suponiendo que en la hoja1 esta la columna con 12000 datos, en la hoja2 celda A1 coloca =Hoja1!A1, en la celda A2 =Hoja1!A2 y asi sucesivamente hasta llegar a la celda A55 =Hoja1!A55, en la celda B2 sigue con la secuencia =Hoja1!A56 hasta la celda B55 =Hoja1!A110, continuando con la secuencia hasta la columna 8 que termina con =Hoja1!A440.
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

redistribuir columna larga en varias para imprimir

Publicado por Juanjo (494 intervenciones) el 03/09/2015 10:30:05
Muy buenas.

Un poco farragoso, pero creo que funciona.

En la A1 de la hoja2 por esta fórmula:

=DIRECCION(ENTERO((FILA()-1)/55)*440+(COLUMNA()-1)*55+RESIDUO(FILA()-1;55)+1;1;;;"Hoja1")

Luego arrastra hasta la columna 8 y tantas filas como necesites.

Ya dirás si te funciona.

Un saludo. Juanjo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

redistribuir columna larga en varias para imprimir

Publicado por Luciano de Samosata (4 intervenciones) el 04/09/2015 12:36:03
Muchas gracias por la respuesta, me viene bien, aunque sea un tanto simple, pero creo que lo podré reutilizar una y otra vez. Sin embargo, se me olvidó decir que necesito que me respete el formato de negritas, distintos tamaños de letras, color de celda, etc., y de esta manera que propones no lo hace. ¿Habría alguna solución para esto? 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

redistribuir columna larga en varias para imprimir

Publicado por Juanjo (494 intervenciones) el 04/09/2015 14:00:49
Muy buenas.

La solución anterior no te sirve para los formatos. El formato que queda es el que tenga la celda que contiene la fórmula, no el que tiene la celda a la que se refiere. La única forma que se me ocurre es que con macros. Esta te puede servir:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Sub agrupar()
    Sheets("Hoja1").Select
    tfilas = Sheets("Hoja1").Range("A1").End(xlDown).Row
    filas = 55
    columnas = 8
    hoja = filas * columnas
    pasadas = Int(tfilas / hoja) + 1
    For i = 1 To pasadas
        For j = 1 To columnas
            Range(Cells((i - 1) * hoja + 1 + (j - 1) * filas, 1), Cells((i - 1) * hoja + filas + (j - 1) * filas, 1)).Copy
            Sheets("Hoja2").Select
            Cells((i - 1) * filas + 1, j).Select
            ActiveSheet.Paste
            Sheets("Hoja1").Select
        Next
    Next
End Sub

Tienes que tener en cuenta que los datos no quedan referenciados a los que tengas en la Hoja1, por lo que si los cambias no cambiarán en la Hoja2. Tendrás que volver a ejecutar la macro tantas veces como necesites.

Un saludo. Juanjo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

redistribuir columna larga en varias para imprimir

Publicado por Juanjo (494 intervenciones) el 04/09/2015 14:20:15
Muy buenas.

También puedes combinar las dos cosas. Esto es, crear las fórmulas que te dije inicialmente (me falto poner el indirecto):

=INDIRECTO(DIRECCION(ENTERO((FILA()-1)/55)*440+(COLUMNA()-1)*55+RESIDUO(FILA()-1;55)+1;1;;;"Hoja1"))

y luego pasar la macro pero cambiando el

Sheets("Hoja1").Select

por

Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, SkipBlanks:=False, Transpose:=False

esto hace que solo se copie el formato, aunque esta opción es más lenta la anterior.

Un saludo. Juanjo.
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

redistribuir 3 columnas largas (1300 hojas hacia abajo) en varias para imprimir en menos hojas

Publicado por Alex Illanes Aranda (1 intervención) el 14/11/2016 16:51:52
Hola JUANJO. Leí tu respuesta a una duda de una persona y me atreví a pedirte ayuda con algo parecido. Tengo 3 columnas de información en excel que de imprimirlas en hojas, me daría como 1300 hojas y, por lado y lado 650 en total. Quiero organizar la impresión para que me salgan las 3 columnas 3 veces repetidas hacia el lado, de tal forma de imprimir en una hoja 6 veces la información, y no sé cómo hacerlo.

original
COLUMNA A COLUMNA B COLUMNA C

QUIERO QUE IMPRIMIR

COLUMNA A COLUMNA B COLUMNA C COLUMNA A COLUMNA B COLUMNA C COLUMNA A COLUMNA B COLUMNA C

De antemano, muchas gracias

Alex
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