Innholdsfortegnelse:
- Slik fungerer makroen
- For å implementere denne makroen, må du kopiere og lime den inn i vinduet Workbook_BeforeClose hendelseskode. Når du plasserer makroen, kan den kjøre hver gang du prøver å lukke arbeidsboken:
Video: Excel på norsk: Makro kurs #3 2024
Makroen som presenteres her, er en utmerket måte å beskytte brukere mot ved å utilsiktet lukke filen før de lagres. Når den implementeres, sikrer denne makroen at Excel automatisk lagrer arbeidsboken før den lukkes.
Excel vil normalt advare brukere som forsøker å lukke en ubehandlet arbeidsbok, og gir dem mulighet til å lagre før de lukkes. Mange brukere kan imidlertid blåse forbi advarselen og ved et uhell klikke No, og forteller Excel å lukke uten å lagre. Med denne makroen beskytter du mot dette ved automatisk lagring før lukking.
Slik fungerer makroen
Koden utløses av arbeidsbokens før-slutt-arrangement. Når du prøver å lukke arbeidsboken, brann denne hendelsen, kjører koden i. Kjernen i koden er enkel - det spør brukerne om de vil lukke arbeidsboken. Makroen vurderer deretter om brukeren klikket OK eller Avbryt.
Evalueringen er utført med en Select Case-setning. Select Case-setningen er et alternativ til If-Then-Else-setningen, slik at du kan utføre tilstandskontroller i makroene dine. Den grunnleggende konstruksjonen til en Select Case-setning er enkel:
Velg Case Case Er = Case Is = Case Is = End Velg
Med en Select Case-setning kan du utføre mange betingede kontroller. I dette tilfellet søker du bare etter OK eller Avbryt. Ta en kikk på koden:
I trinn 1 aktiverer du meldingsboksen som betingelseskontroll for Select Case-setningen. Du bruker vbOKCancel argument for å sikre at knappene OK og Avbryt vises som valg.I trinn 2, hvis brukeren klikket på Avbryt i meldingsboksen, forteller makroen Excel for å avbryte Workbook_Close-hendelsen ved å sende True til Cancel Boolean.
Hvis brukeren klikket på OK-knappen i meldingsboksen, trer Trinn 3 i kraft. Her forteller du Excel for å lagre arbeidsboken. Og fordi du ikke angav Avbryt Boolean til True, fortsetter Excel med lukk.
I trinn 4 lukker du bare ut Select Case-setningen. Hver gang du instantierer et Select Case, må du lukke det ut med en tilsvarende sluttvalg.
Slik bruker du makroen
For å implementere denne makroen, må du kopiere og lime den inn i vinduet Workbook_BeforeClose hendelseskode. Når du plasserer makroen, kan den kjøre hver gang du prøver å lukke arbeidsboken:
Aktiver Visual Basic Editor ved å trykke Alt + F11.
-
I prosjektvinduet finner du prosjekt- / arbeidsboknavn og klikker pluss-tegnet ved siden av det for å se alle arkene.
-
Klikk ThisWorkbook.
-
I rullegardinmenyen Hendelse velger du PreClose-hendelsen.
-
Skriv eller lim inn koden i den nylig opprettede modulen.
-
Skriv inn koden i Workbook BeforeClose-hendelsen.