WorkBook Events - Nu salvați cu Freeze Panes - Exemple de cod VBA

Înghețați panourile folosind VBA

Am postat recent pe Panouri de congelare în Excel, iată cum puteți face acest lucru folosind VBA:

Înghețați rândurile

 Rânduri („1: 1”). Selectați ActiveWindow.FreezePanes = True 

Înghețați coloanele

 Range ("A: A"). Selectați ActiveWindow.FreezePanes = True

Înghețați rândurile și coloanele

 Range ("B2"). Selectați ActiveWindow.FreezePanes = True

Deblocați panourile

 ActiveWindow.FreezePanes = Fals 

Forțează caietul de lucru să economisească fără a îngheța panourile

Excel ne permite să controlăm lucrurile prin evenimente. Acest articol nu este o discuție detaliată despre evenimentele sau caracteristicile acestora. În schimb, oferă un exemplu de eveniment WorkBook. Acestea sunt evenimente care au loc la nivelul registrului de lucru, mai degrabă decât la o anumită foaie de lucru.

Prin VBA putem controla ce se întâmplă la anumite evenimente, cum ar fi înainte de tipărire sau înainte de salvare. O problemă obișnuită cu care mă confrunt este faptul că unui număr de oameni cu care lucrez nu le plac fișierele cu Freeze Panes pe ele.

Deci, în acest articol, vom pune împreună un cod care va verifica dacă Freeze Panes este activat și, dacă da, nu va salva fișierul. Acest lucru înseamnă că trebuie să-l salvez fără înghețarea geamurilor - păstrându-mi colegii fericiți !!

Cel mai important lucru despre evenimentele din registrul de lucru este că acestea trebuie salvate la locul corect - la nivelul registrului de lucru.

Pentru a accesa nivelul registrului de lucru, urmați pașii de mai jos:

1. Faceți clic dreapta pe un registru de lucru Excel - vizualizați codul:

2. Aceasta va aduce:

3. Faceți dublu clic pe „Acest registru de lucru” și apoi selectați „Cartea de lucru” din prima listă verticală din partea stângă:

Vedem că valoarea din partea stângă s-a schimbat acum în „Deschis” - cu un anumit cod pentru Evenimentul Deschis de carte de lucru. Acest cod ne va permite să stabilim ce se întâmplă atunci când registrul de lucru se deschide pentru prima dată.

Cu toate acestea, vrem să controlăm ce se întâmplă atunci când salvăm registrul de lucru. Deci, schimbați meniul dreapta în meniul „Înainte de a salva”. Ecranul va arăta acum ca:

Acum inserăm următorul cod după declarație:

Dacă ActiveWindow.FreezePanes = True, atunci MsgBox "Freeze Panes este activat - Fișierul NU ESTE SALVAT" Cancel = True End Dacă

Astfel, codul complet arată acum:

Private Sub Workbook_BeforeSave (ByVal SaveAsUI As Boolean, Cancel As Boolean) Dacă ActiveWindow.FreezePanes = Adevărat, MsgBox "Freeze Panes este activat - Fișierul NU ESTE SALVAT" Cancel = True End If End Sub

Acum salvați fișierul și apoi activați Freeze Panes în orice fereastră. Apoi - RESAVE fișierul. Va apărea un mesaj care indică faptul că „Freeze Panes” este activat și că fișierul nu este salvat.

Într-adevăr, fișierul nu se va salva până când Freeze Panes este eliminat.

Vei ajuta la dezvoltarea site-ului, partajarea pagina cu prietenii

wave wave wave wave wave