Excel, vista personalizada

Deseo crear una vista personalizada, pero que aplique de manera independiente y a voluntad a cada hoja que decida de un libro de 99 hojas.
Hasta el momento lo he logrado en la hoja 1, pero al aplicarla en la hoja 2, lo hace en la 1 aun y cuando esté en la 2.

1 respuesta

Respuesta
1
Si lo lograste en la hoja1 y no lo hiciste mediante código, ¿cómo lo hiciste?
¿A qué llamas vista personalizada?
Bueno, seguí el manualito de la ayuda de excel, es decir, en la cinta, pestaña vista, sección Vistas de libro, vistas personalizadas...
Analizando el código que obtuve (soy curioso) con la grabadora de macros, me otorgó:
Sub Macro1()
'
'
    ActiveWorkbook.CustomViews.Add ViewName:="General", PrintSettings:=True, _
        RowColSettings:=True
    Rows("10:17").Select
    Selection.EntireRow.Hidden = True
    Columns("E:H").Select
    Selection.EntireColumn.Hidden = True
    ActiveWorkbook.CustomViews.Add ViewName:="Especial", PrintSettings:=True, _
        RowColSettings:=True
    Range("I5").Select
    ActiveWorkbook.CustomViews("General").Show
    Range("H7").Select
    ActiveWorkbook.CustomViews("Especial").Show
    Range("I7").Select
    ActiveWorkbook.CustomViews("General").Show
End Sub
Funciona re-bien para la hoja 1, pero al tratar de aplicarla a la hoja 2, ejecuta las acciones en la hoja 1, no en la 2...
Veo que la instrucción está en ActiveWorkbook, no en ActiveSheet... lo que me hace pensar que las vistas no las ejecuta a nivel hoja, sino libro... y yo la ocupo para un libro de 99 hojas y activarla en una hoja específica a la vez, ¿situación qué no logro... donde guardará esta instrucción (las vistas) excel?, ¿Cómo le hago?
Gracias por tu atención.
Si eso es lo malo con las vistas personalizadas, se agregan al objeto CustomViews, mediante indice, una lata. Te sugiero que hagas una nueva macro ( con el grabador de macros, que ya lo conoces), realizando las intervenciones que necesitas en una hoja cualquiera, luego de finalizar la macro, modificas las referencias de la hoja sobre la cual se ejecuto, modificando esas referencias por ActiveSheet, aloja el macro en un modulo y luego cada vez que lo invoques ejecutara la acción sobre la hoja activa y no sobre una especifica, ya que estarás utilizando ActiveSheet
Gracias, finalmente es lo que hice... hice mi macro ocultando filas, columnas, poniendo suma automática y... en fin, botón de comando en la cinta de opciones incluido.
Lastima que no sea más flexible este objeto.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas