Foros del Web » Soporte técnico » Ofimática »

vba Excel crear hoja controlando formato

Estas en el tema de vba Excel crear hoja controlando formato en el foro de Ofimática en Foros del Web. Buenas, tengo una hoja excel en la que, cuando le doy a un botón, me pregunta cuantas veces quiero crear unas ciertas celdas con un ...
  #1 (permalink)  
Antiguo 10/05/2011, 03:51
 
Fecha de Ingreso: diciembre-2009
Mensajes: 52
Antigüedad: 15 años
Puntos: 0
vba Excel crear hoja controlando formato

Buenas,

tengo una hoja excel en la que, cuando le doy a un botón, me pregunta cuantas veces quiero crear unas ciertas celdas con un contenido, y se crean mediante una macro. Se crean seguidas y tienen el mismo contenido sólamente con variaciones en rangos en sus fórmulas.

Lo que necesitaría, y no he conseguido, es que no se me queden partidas en dos hojas distintas cada conjunto de celdas creadas. Es decir, yo copio un conjunto de celdas X veces una seguida de otra, pero cada conjunto de celdas no me puede quedar partido en dos hojas. Lo que sí puede pasar es que me queden unos conjuntos en una hoja y otros en otra hoja, pero nunca partirse en dos hojas celdas de un mismo conjunto.

¿Alguien sabe como controlar esto? Alguna propiedad para saber en qué parte de una hoja estoy, qué distancia hasta el final de hoja me queda,...

Como alternativa vi que existe una propiedad llamada CurrentPage pero sólo la encuentro para las Pivot Table que no se demasiado si me podría servir.
Si supiera en que página estoy al principio de crear el conjunto de hojas y difiere de la página al final de crear el conjunto, sé que debería desplazar todo el conjunto a la segunda hoja, pero no consigo saber en qué página estoy.

Muchas gracias por avanzado.

Saludos
  #2 (permalink)  
Antiguo 10/05/2011, 12:36
Avatar de mrocf  
Fecha de Ingreso: marzo-2007
Ubicación: Bs.As.
Mensajes: 1.103
Antigüedad: 17 años, 8 meses
Puntos: 88
Respuesta: vba Excel crear hoja controlando formato

¿Realmente no creerás que con tu descripción es posible comprender tu problemática, verdad?...

- No has mostrado tu código;
- No has mostrado la estructura de tus datos;
- No has mostrado el error que observas;

¡No has mostrado nada de nada!...

Para poder ayudarte, entonces, te sugiero hacer todo lo opuesto. Es decir: sube a algún servidor público (como MediaFire, Megauload, etc) una muestra de tu archivo (que contenga el código en cuestión), como para poder echarle una mirada.

Saludos, Cacho.
  #3 (permalink)  
Antiguo 11/05/2011, 01:19
 
Fecha de Ingreso: diciembre-2009
Mensajes: 52
Antigüedad: 15 años
Puntos: 0
Respuesta: vba Excel crear hoja controlando formato

Un ejemplo simplificado pero que expresa claramente mi caso es este:

Do
' en cada iteración simplemente se crea una tabla

ActiveCell.Offset(i, 0).Value = "AAAA"
ActiveCell.Offset(i, 1).Value = "BBB"
ActiveCell.Offset(i, 2).Value = "CCC"
ActiveCell.Offset(i + 1, 0).Value = "---"
ActiveCell.Offset(i + 1, 1).Value = "---"
ActiveCell.Offset(i + 1, 2).Value = "---"
ActiveCell.Offset(i + 3, 0).Value = "aaa"
ActiveCell.Offset(i + 3, 1).Value = "bbb"
ActiveCell.Offset(i + 3, 2).Value = "ccc"
Range(ActiveCell.Offset(i, 0).Address, ActiveCell.Offset(i + 3, 2).Address).Borders.Value = True

i = i + 10

j = j + 1

Loop While j < N
' N ha sido introducida anteriormente por el usuario


Este código crea N tablas en una Hoja.

Mi problema es que de estas N tablas, me puede quedar alguna dividida en distintas páginas, una parte de la tabla en una página y la otra en la siguiente.

Mi pregunta es si existe alguna propiedad o método para saber, por ejemplo, en qué posición de la página estoy, cuanto me queda para pasar a la siguiente página, en qué página estoy actualmente,... información que me pueda ayudar a controlar el formato de las páginas, para arreglarlo yo mismo mediante código y que los usuarios no tengan que preocuparse de la presentación.

Muchas gracias.

Saludos
  #4 (permalink)  
Antiguo 11/05/2011, 08:07
Avatar de mrocf  
Fecha de Ingreso: marzo-2007
Ubicación: Bs.As.
Mensajes: 1.103
Antigüedad: 17 años, 8 meses
Puntos: 88
Respuesta: vba Excel crear hoja controlando formato

Lée en la ayuda del VBA sobre la propiedad:

HPageBreaks

que son los saltos de página horizontales de la hoja.

La idea es: si un salto de página automático te "corta" una tabla, entonces debes forzar un salto de página manual previo.

Para ello utilizarás la propiedad mencionada.
Saludos, Cacho.
  #5 (permalink)  
Antiguo 12/05/2011, 02:03
 
Fecha de Ingreso: diciembre-2009
Mensajes: 52
Antigüedad: 15 años
Puntos: 0
Respuesta: vba Excel crear hoja controlando formato

Hola de nuevo,

Ayer mismo vi esta propiedad, y hoy ya lo he conseguido.

Muchas gracias.

Saludos
  #6 (permalink)  
Antiguo 12/05/2011, 02:08
Avatar de mrocf  
Fecha de Ingreso: marzo-2007
Ubicación: Bs.As.
Mensajes: 1.103
Antigüedad: 17 años, 8 meses
Puntos: 88
Respuesta: vba Excel crear hoja controlando formato

¡Excelente!... ¡Felicitaciones!

¿Sabes qué?... Si tienes tiempo, sería interesante para el resto de los participantes de este Foro, que mostraras la parte de tu código que evalúa si el salto de página "corta" (o no) una tabla, y como lo has solucionado.

Saludos, Cacho.

Etiquetas: excel, formato, hoja, vba
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:39.