Darbgrāmatas notikumi - nesaglabājiet ar iesaldēšanas rūtīm - VBA koda piemēri

Rūsu iesaldēšana, izmantojot VBA

Es nesen ievietoju Excel sasalšanas rūtis, lūk, kā to izdarīt, izmantojot VBA:

Iesaldēt rindas

 Rindas ("1: 1"). Atlasiet ActiveWindow.FreezePanes = True 

Iesaldēt kolonnas

 Diapazons ("A: A"). Atlasiet ActiveWindow.FreezePanes = True

Iesaldēt rindas un kolonnas

 Diapazons ("B2"). Atlasiet ActiveWindow.FreezePanes = True

Atsaldēt rūtis

 ActiveWindow.FreezePanes = Nepareizi 

Piespiediet darbgrāmatu ietaupīt bez iesaldēšanas rūtīm

Excel ļauj mums kontrolēt lietas, izmantojot notikumus. Šis raksts nav detalizēta diskusija par notikumiem vai to iezīmēm. Tā vietā ir sniegts darbgrāmatas notikuma piemērs. Tie ir notikumi, kas notiek darbgrāmatas līmenī, nevis noteiktā darblapā.

Izmantojot VBA, mēs varam kontrolēt, kas notiek noteiktos notikumos, piemēram, pirms drukāšanas vai pirms saglabāšanas. Viena bieži sastopama problēma ir tā, ka daudziem cilvēkiem, ar kuriem es strādāju, nepatīk faili ar iesaldēšanas rūtīm.

Tāpēc šajā rakstā mēs apkoposim kodu, kas pārbaudīs, vai iesaldēšanas paneļi ir ieslēgti, un, ja tā, tas failu nesaglabās. Tas nozīmē, ka man tas ir jāsaglabā bez iesaldēšanas rūtīm - lai kolēģi būtu laimīgi !!

Vissvarīgākais darbgrāmatas notikumos ir tas, ka tie jāsaglabā pareizajā vietā - darbgrāmatas līmenī.

Lai piekļūtu darbgrāmatas līmenim, veiciet tālāk norādītās darbības.

1. Ar peles labo pogu noklikšķiniet uz Excel darbgrāmatas - skatiet kodu:

2. Tas parādīs:

3. Veiciet dubultklikšķi uz “Šī darbgrāmata” un pēc tam kreisajā pusē esošajā pirmajā nolaižamajā izvēlnē atlasiet “Darbgrāmata”:

Mēs redzam, ka kreisās puses vērtība tagad ir mainīta uz “Atvērt” - ar kādu kodu darbgrāmatas atvēršanas notikumam. Šis kods ļaus mums noteikt, kas notiek, kad darbgrāmata tiek atvērta pirmo reizi.

Tomēr mēs vēlamies kontrolēt, kas notiek, saglabājot darbgrāmatu. Tāpēc mainiet labās puses nolaižamo izvēlni uz “Pirms saglabāšanas”. Tagad ekrāns izskatīsies šādi:

Tagad pēc deklarācijas ievietojam šādu kodu:

Ja ActiveWindow.FreezePanes = True, tad MsgBox "Freeze Panes ir ieslēgts - fails netiek saglabāts" Atcelt = True End Ja

Tātad viss kods tagad izskatās šādi:

Privāta apakšdarbgrāmata_BeforeSave (ByVal SaveAsUI kā Būla, Atcelt kā Būla) Ja ActiveWindow.FreezePanes = True, tad MsgBox "Iesaldēšanas rūts ir ieslēgta - fails nav saglabāts" Atcelt = Patiess beigas Ja beigas

Tagad saglabājiet failu un pēc tam jebkurā logā aktivizējiet Freeze Panes. Pēc tam - ATGLABĀT failu. Parādīsies ziņojumapmaiņa, kurā teikts, ka ir ieslēgta “Freeze Panes” - un fails nav saglabāts.

Patiešām, fails netiks saglabāts, kamēr netiks noņemtas Freeze Panes.

Jums palīdzēs attīstību vietā, daloties lapu ar draugiem

wave wave wave wave wave