Imprimir usando la hoja completa.

02/09/2006 - 21:23 por JOSE | Informe spam
Buenas tardes:


Mi problema es el siguiente,. Todas las semanas me pasan una hoja Excel que
son 2 columnas, pero que se alargan hasta ocupar 300 hojas en impresión.
Claro esta que la hoja solo esta escrita a menos de un tercio de su
superficie a lo ancho. Como podria yo hacer que al imprimir me imprimiese
los datos usando toda la hoja?. De tal forma que la impresión solo ocuparia
100 hojas.


Por cierto tengo Office 2003

Tambien tengo otra pequeña consulta de access. Donde podria realizarla?


Gracias por leerme


José

Preguntas similare

Leer las respuestas

#6 NESH
04/09/2006 - 00:19 | Informe spam
bueno espero apoyar y aprender de este grupo
nos estraemos comunicando bay bay
Respuesta Responder a este mensaje
#7 Héctor Miguel
04/09/2006 - 06:59 | Informe spam
hola, Jose !

... no me importan los margenes para nada, de hecho yo los pongo todos a cero
y luego procedo a cortar y copiar de forma que al final me quedan 6 columnas por pagina que es lo ideal.
El problema es que al ser tanta informacion y todas las semanas es un trabajo muy tedioso.



prueba con el siguiente codigo que 'pasa' [en la misma hoja] los datos 'sobrantes' para ajustar 3 grupos de dos columnas:
[suponiendo que se incluye desde la fila 1 hasta n_filas de cada semana] la ventaja es que lo hace de un solo paso ;)

Sub en_Tercios()
Dim Filas As Integer, Ajuste As Byte, Tercio As Byte
With Worksheets("hoja1")
With .Range("a" & Rows.Count).End(xlUp)
Filas = .Row \ 3: Ajuste = .Row Mod 3: End With
For Tercio = 1 To 2
.Range("a1").Offset(Filas * Tercio - (Ajuste > 0) * _
IIf(Ajuste > Tercio, Tercio, Ajuste)).Resize(Filas - (Ajuste > Tercio), 2).Cut _
Destination:=.Range("a1").Offset(, Tercio * 2)
Next
End With
End Sub

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.

__ el resto de la consulta __
Ej. Yo recibo esto.
3456 xxxxxxxxx
3457 xxxxxxxxx
3458 xxxxxxxxx
3459 xxxxxxxxx
3460 xxxxxxxxx
3461 xxxxxxxxx
3462 xxxxxxxxx
3463 xxxxxxxxxxx
3464 xxxxxxxxx
3465 xxxxxxxxxx
3466 xxxxxxxxxxxxx
3467 xxxxxxxxxxxxx
3468 xxxxxxxxxxxx
3469 xxxxxxxxxxxx
3470 xxxxxxxxxxxxx
3471 xxxxxxxxxxxxx
3472 xxxxxxxxxxxxx
3473 xxxxxxxxxxxxxx
3474 xxxxxxxxxxxxx

y yo lo paso a eso
3456 xxxxxx 3463 xxxxxxx 3469 xxxxxxxx
3457 Xxxxxxxxx 3464 xxxxxxxx 3470 xxxxxxxx
3458 Xxxxxxxxx 3465 xxxxxxxx 3471 xxxxxxxx
3459 Xxxxxxxxx 3466 xxxxxxxx 3472 xxxxxxxx
3460 Xxxxxxxxx 3467 xxxxxxxxx 3473 xxxxxxxx
3461 Xxxxxxxxx 3468 xxxxxxxxx 3474 xxxxxxxx
3462 Xxxxxxxxx

Claro esta que los numero no son seguidos "son referencias" y las X son "descripciones"
Respuesta Responder a este mensaje
#8 JOSE
04/09/2006 - 16:36 | Informe spam
Buenas tardes:

Muchísimas gracias Hector. Queda muy bien. Podría ser que en vez de ser a
lo largo, fuese a lo ancho. Me explico (tal y como queda hora los código
se ordenan hacia abajo, es decir que el 1 esta en la página columna 1, 1
el 70 en la página 2 columna 1, etc. cuando estaría bien que ambos
estuviesen en la página 1.) Si se puede sin complicarte la vida. Porque de
momento esto que hiciste por mi es muy de agradecer.



Graciassss


José










"Héctor Miguel" wrote in
news:eur$:

hola, Jose !

... no me importan los margenes para nada, de hecho yo los pongo
todos a cero y luego procedo a cortar y copiar de forma que al final
me quedan 6 columnas por pagina que es lo ideal. El problema es que
al ser tanta informacion y todas las semanas es un trabajo muy
tedioso.



prueba con el siguiente codigo que 'pasa' [en la misma hoja] los datos
'sobrantes' para ajustar 3 grupos de dos columnas: [suponiendo que se
incluye desde la fila 1 hasta n_filas de cada semana] la ventaja es
que lo hace de un solo paso ;)

Sub en_Tercios()
Dim Filas As Integer, Ajuste As Byte, Tercio As Byte
With Worksheets("hoja1")
With .Range("a" & Rows.Count).End(xlUp)
Filas = .Row \ 3: Ajuste = .Row Mod 3: End With
For Tercio = 1 To 2
.Range("a1").Offset(Filas * Tercio - (Ajuste > 0) * _
IIf(Ajuste > Tercio, Tercio, Ajuste)).Resize(Filas - (Ajuste >
Tercio), 2).Cut _ Destination:=.Range("a1").Offset(, Tercio *
2)
Next
End With
End Sub

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.

__ el resto de la consulta __
Ej. Yo recibo esto.
3456 xxxxxxxxx
3457 xxxxxxxxx
3458 xxxxxxxxx
3459 xxxxxxxxx
3460 xxxxxxxxx
3461 xxxxxxxxx
3462 xxxxxxxxx
3463 xxxxxxxxxxx
3464 xxxxxxxxx
3465 xxxxxxxxxx
3466 xxxxxxxxxxxxx
3467 xxxxxxxxxxxxx
3468 xxxxxxxxxxxx
3469 xxxxxxxxxxxx
3470 xxxxxxxxxxxxx
3471 xxxxxxxxxxxxx
3472 xxxxxxxxxxxxx
3473 xxxxxxxxxxxxxx
3474 xxxxxxxxxxxxx

y yo lo paso a eso
3456 xxxxxx 3463 xxxxxxx 3469 xxxxxxxx
3457 Xxxxxxxxx 3464 xxxxxxxx 3470 xxxxxxxx
3458 Xxxxxxxxx 3465 xxxxxxxx 3471 xxxxxxxx
3459 Xxxxxxxxx 3466 xxxxxxxx 3472 xxxxxxxx
3460 Xxxxxxxxx 3467 xxxxxxxxx 3473 xxxxxxxx
3461 Xxxxxxxxx 3468 xxxxxxxxx 3474 xxxxxxxx
3462 Xxxxxxxxx

Claro esta que los numero no son seguidos "son referencias" y las X
son "descripciones"




Respuesta Responder a este mensaje
#9 JOSE
04/09/2006 - 16:50 | Informe spam
Buenas tardes:

Mucha gracias Ansaval. pero me da un error de sintaxis en la linea que
adjunto.

Gracias por leerme


Jose



"AnSanVal" wrote in
news::

Sheets(2).Cells(fila2, columna + 1).Value = Sheets(1).Cells(fila,
2).Value

Respuesta Responder a este mensaje
#10 Héctor Miguel
04/09/2006 - 22:06 | Informe spam
hola, Jose !

... que en vez de ser a lo largo, fuese a lo ancho
... los codigo se ordenan hacia abajo... el 1 esta en la pagina columna 1, 1 el 70 en la pagina 2 columna 1, etc.
... estaria bien que ambos estuviesen en la pagina 1



que... segun se aprecia del ejemplo expuesto... [es/era] el orden que das 'manualmente' a los datos :))
lo que 'facilitaba' dividir en tres 'grandes bloques' [o tercios] y mover los finales al parejo del primero en 'pocos pasos' ;)

si lo que necesitas es que se 'traspasen' de izquierda a derecha y posteriormente hacia abajo... prueba con el siguiente:

Sub Re_acomoda()
Application.ScreenUpdating = False
Dim Fila As Integer, Sig As Integer
For Fila = 2 To Range("a" & Rows.Count).End(xlUp).Row Step 3
Sig = Sig + 1
Cells(Fila, 1).Resize(, 2).Cut Destination:=Cells(Sig, 3)
Cells(Fila + 1, 1).Resize(, 2).Cut Destination:=Cells(Sig, 5)
Cells(Fila + 2, 1).Resize(, 2).Cut Destination:=Cells(Sig + 1, 1)
Next
End Sub

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.

__ el resto de la consulta __
Ej. Yo recibo esto.
3456 xxxxxxxxx
3457 xxxxxxxxx
3458 xxxxxxxxx
3459 xxxxxxxxx
3460 xxxxxxxxx
3461 xxxxxxxxx
3462 xxxxxxxxx
3463 xxxxxxxxxxx
3464 xxxxxxxxx
3465 xxxxxxxxxx
3466 xxxxxxxxxxxxx
3467 xxxxxxxxxxxxx
3468 xxxxxxxxxxxx
3469 xxxxxxxxxxxx
3470 xxxxxxxxxxxxx
3471 xxxxxxxxxxxxx
3472 xxxxxxxxxxxxx
3473 xxxxxxxxxxxxxx
3474 xxxxxxxxxxxxx

y yo lo paso a eso
3456 xxxxxx 3463 xxxxxxx 3469 xxxxxxxx
3457 Xxxxxxxxx 3464 xxxxxxxx 3470 xxxxxxxx
3458 Xxxxxxxxx 3465 xxxxxxxx 3471 xxxxxxxx
3459 Xxxxxxxxx 3466 xxxxxxxx 3472 xxxxxxxx
3460 Xxxxxxxxx 3467 xxxxxxxxx 3473 xxxxxxxx
3461 Xxxxxxxxx 3468 xxxxxxxxx 3474 xxxxxxxx
3462 Xxxxxxxxx

Claro esta que los numero no son seguidos "son referencias" y las X son "descripciones"
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida