lunes, 17 de octubre de 2011

Código VBA (acciones con una hoja de Excel)





Presentamos una selección de ejemplos de código en VBA listo para ejecutar mediante cualquier macro o por medio de un evento de algún objeto (Excel, un libro, una hoja o un rango).

En este artículo, ofrecemos líneas de código ejecutable para realizar acciones con una hoja de Excel. Concretamente veremos formas de OCULTAR, MOSTRAR, PROTEGER, DESPROTEGER, SELECCIONAR, IMPRIMIR y OTRAS ACCIONES con VBA.



El texto en verde que a veces se puede ver entre el código, es el que debe personalizar el usuario, si procede.


OCULTAR / MOSTRAR HOJAS DE EXCEL CON VBA

1) Ocultar una hoja de Excel (para mostrarla, hay que cambiar "False" por "True".

Sub OcultarHoja1()
   Sheets("Hoja1").Visible=False
End Sub

2) Ocultar totalmente una hoja de Excel (no se podrá mostrar con el menú contextual que emerge de las pestañas de hojas).



Sub OcultarHoja1Totalmente()
   Sheets("Hoja1").Visible=xlVeryHidden
End Sub

PROTECCIÓN DE HOJAS DE EXCEL CON VBA

3) Proteger la hoja activa de Excel (no se podrán seleccionar las celdas bloqueadas).



Sub ProtegerHoja()
   ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
   ActiveSheet.EnableSelection = xlUnlockedCells

End Sub


4) Desproteger una hoja de Excel.


Sub DesprotegerHoja()
   ActiveSheet.Unprotect
End Sub

VARIAS ACCIONES CON HOJAS DE EXCEL CON VBA

5) Seleccionar una hoja de Excel (el nombre debe ser el que aparece en la pestaña de la hoja).

Sub SeleccionarHoja1()
   Sheets("Hoja1").Select
End Sub


6) Cambiar el zoom de una hoja de Excel.


Sub Zoom120()
   ActiveWindow.Zoom = 120
End Sub


7) Imprimir las hojas seleccionadas con la impresora y configuraciones por defecto.

Sub ImprimirHojaActiva()
   ActiveWindow.SelectedSheets.PrintOut copies:=1, collate:=True
End Sub

8) Ocultar la cuadrícula de la hoja activa (para mostrarlos, cambiar "False" por "True").

Sub OcultarCuadricula()
   ActiveWindow.DisplayGridlines = False
End Sub

9) Ocultar los títulos de encabezamiento de filas y columnas (para mostrarlos, cambiar "False" por "True").

Sub OcultarTitulos()
   ActiveWindow.DisplayHeadings = False
End Sub

  José Manuel Pomares Medrano


3 comentarios:

  1. Asi se hacen las cosas, sencillas, directas y claras muy buen trabajo y muchas gracias

    ResponderEliminar
  2. Es posible crear una macro que al cerrar x libro de excel, abra inmediatamente otro?

    ResponderEliminar