Utløser en hendelse når et regneark er deaktivert

May 10  by Eliza

John må sikre at visse handlinger har funnet sted (informasjon lagt, etc.) før en bruker forlater et regneark. Han lurer på om det er det noen slags makro hendelse som WorksheetBeforeDeactivate.

Det er faktisk to hendelsene du kan bruke til dette formålet. Du kan bruke SheetDeactivate hendelse i Thisworkbook-modulen for å utløse handlinger når en bruker forlater alle regneark i arbeidsboken:

Private Sub Workbook_SheetDeactivate (ByVal Sh Som Object)
MsgBox Tekst: = "Du har nettopp forlatt sheet:" & Sh.Name
End Sub

Hvis du ønsker å utløse handlinger bare når de forlater et bestemt regneark, så kan du bruke Deaktiver hendelse i regnearkobjekt:

Private Sub Worksheet_Deactivate ()
'Ark spesifikk kode går her
End Sub

Du bør vite imidlertid at i begge tilfeller regnearket som brukeren velger å gå vil være det aktive regnearket etter hendelsen er fullført. Hvis du ønsker å tvinge brukeren til å holde seg på regnearket, må du spesifikt sette dem tilbake i regnearket, på denne måten:

Private Sub Worksheet_Deactivate ()
'Ark spesifikk kode går her
Sheets ("Ark1"). Velg
End Sub

Dette forutsetter selvsagt at navnet på regnearket du vil at brukeren skal forbli på er Ark1.

ExcelTips er din kilde for kostnadseffektiv Microsoft Excel trening. Dette tipset (7728) gjelder for Microsoft Excel 97, 2000, 2002, og 2003. Du kan finne en versjon av dette tipset for Båndet av Excel (Excel 2007 og senere) her: Utløsende en hendelse når et regneark er deaktivert.