Indholdsfortegnelse:
Video: WHY the Money Workbook & the processes of Access work!! 2024
Der er tidspunkter, hvor du ikke ønsker, at en bruger skal lukke en Excel-projektmappe uden at indtaste et bestemt stykke data. I disse situationer ville det være nyttigt at nægte brugeren evnen til at lukke projektmappen, indtil målcellen er udfyldt (som vist her). Det er her, hvor denne nifty makro kommer ind.
Forhindre lukning, indtil en bestemt celle er befolket.Hvordan makroen virker
Denne kode udløses af arbejdsbogens BeforeClose-begivenhed. Når du forsøger at lukke projektmappen, brænder denne begivenhed, kører koden indenfor. Denne makro kontrollerer, om målcellen (celle C7, i dette tilfælde) er tom. Hvis den er tom, afbrydes lukkeprocessen. Hvis C7 ikke er tom, gemmes og lukkes arbejdsbogen:
Privat under Workbook_BeforeClose (Annuller som boolsk) 'Trin 1: Kontrollér for at se, om celle C7 er tomt, hvis ark ("Sheet1"). Range ("C7"). Værdi = "Så" Trin 2: Hvis cellen er tom, skal du annullere lukningen og fortælle brugeren Annuller = True MsgBox "Celle C7 kan ikke være tomt" 'Trin 3: Hvis cellen ikke er tom, gem og luk Else ActiveWorkbook. Luk SaveChanges: = True End Hvis End Sub
Trin 1 kontrollerer, om C7 er tom.
Hvis C7 er tomt, træder Trin 2 i kraft, annullerer lukkeprocessen ved at sende True til Trin 2 aktiverer også en meddelelsesboks, der giver brugeren besked om sin dumhed (vel, det er ikke så hårdt, virkelig).
I trin 3, hvis celle C7 ikke er blank, gemmes arbejdsbogen og lukket.
Sådan bruger du makroen
For at implementere denne makro skal du kopiere og indsætte den i vinduet Workbook_BeforeClose-begivenhedskode. Hvis du placerer makroen her, kan den køre, hver gang du forsøger at lukke projektmappen: <
-
I projektvinduet skal du finde dit projekt / projektmappe og klikke på plustegnet ved siden af det for at se alle arkene. > Klik på ThisWorkbook.
-
Vælg begivenheden BeforeClose i rullemenuen Begivenhed.
-
Skriv eller indsæt koden i det nyoprettede modul.
-
Indtast din kode i Workbook BeforeClose-begivenheden.