Eventos del libro de trabajo - No guarde con Freeze Panes - Ejemplos de código VBA

Congelar paneles usando VBA

Recientemente publiqué sobre Paneles de congelación en Excel, así es como puede hacerlo usando VBA:

Congelar filas

 Filas ("1: 1"). Seleccione ActiveWindow.FreezePanes = True 

Congelar columnas

 Rango ("A: A"). Seleccione ActiveWindow.FreezePanes = True

Congelar filas y columnas

 Rango ("B2"). Seleccione ActiveWindow.FreezePanes = True

Descongelar paneles

 ActiveWindow.FreezePanes = Falso 

Obligar a guardar el libro sin congelar paneles

Excel nos permite controlar las cosas a través de eventos. Este artículo no es una discusión detallada sobre qué son los eventos o sus características. En su lugar, da un ejemplo de un evento de libro de trabajo. Estos son eventos que se llevan a cabo a nivel de libro de trabajo en lugar de una hoja de trabajo en particular.

A través de VBA podemos controlar lo que sucede en determinados eventos como antes de imprimir o antes de guardar. Un problema común al que me enfrento es que a algunas personas con las que trabajo no les gustan los archivos con Freeze Panes.

Entonces, en este artículo, reuniremos un código que verificará si Freeze Panes está activado y, de ser así, no guardará el archivo. Esto significa que tengo que guardarlo sin congelar paneles, ¡¡manteniendo felices a mis colegas !!

Lo más importante acerca de los eventos del libro de trabajo es que deben guardarse en el lugar correcto: en el nivel del libro de trabajo.

Para acceder al nivel del libro de trabajo, siga los pasos a continuación:

1. Haga clic con el botón derecho en un libro de Excel - ver código:

2. Esto mostrará:

3. Haga doble clic en "Este libro de trabajo" y luego seleccione "Libro de trabajo" en el primer menú desplegable del lado izquierdo:

Vemos que el valor en el lado izquierdo ahora ha cambiado a "Abrir", con algo de código para el Evento de apertura del libro de trabajo. Este código nos permitirá determinar qué sucede cuando el libro se abre por primera vez.

Sin embargo, queremos controlar lo que sucede cuando guardamos el libro. Así que cambie el menú desplegable de la derecha a "Antes de guardar". La pantalla ahora se verá así:

Ahora insertamos el siguiente código después de la declaración:

Si ActiveWindow.FreezePanes = True, entonces MsgBox "Freeze Panes is on - File NOT SAVED" Cancelar = True End If

De modo que el código completo ahora se ve así:

Private Sub Workbook_BeforeSave (ByVal SaveAsUI como booleano, Cancelar como booleano) Si ActiveWindow.FreezePanes = True, entonces MsgBox "Freeze Panes está activado - El archivo NO está guardado" Cancelar = True End If End Sub

Ahora guarde el archivo y LUEGO active Freeze Panes en cualquier ventana. Luego - RESGUARDE el archivo. Aparecerá un cuadro de mensaje que indica que "Freeze Panes" está activado y que el archivo no está guardado.

De hecho, el archivo no se guardará hasta que se elimine Freeze Panes.

Va a ayudar al desarrollo del sitio, compartir la página con sus amigos

wave wave wave wave wave