Innholdsfortegnelse:
Video: Calling All Cars: The 25th Stamp / The Incorrigible Youth / The Big Shot 2024
I Excel kan du jobbe med data som er så følsomme at du vil spare hver gang en bestemt celle eller rekkevidde av celler er endret. Denne makroen lar deg definere en rekke celler som, når de endres, tvinger arbeidsboken til å lagre.
I eksemplet som vises, vil du at arbeidsboken skal lagres når en redigeres til noen av cellene i området C5: C16.
Hvordan makroen fungerer
Hemmeligheten til denne koden er Intersect-metoden. Fordi du ikke vil lagre regnearket når en gammel celle endres, bruker du Intersect-metoden til å bestemme om målcellen (cellen som endret) krysser med området som er angitt som utløserområdet (C5: C16 i dette tilfellet).
Intersect-metoden returnerer en av to ting: et områdeobjekt som definerer krysset mellom de to oppgitte områdene, eller ingenting. Så i hovedsak må du kaste målcellen mot Intersect-metoden for å sjekke for en verdi av ingenting. På det tidspunktet kan du bestemme om du skal lagre arbeidsboken.
Privat Sub Worksheet_Change (ByVal Target As Range) 'Trinn 1: Kryver det forandrede området? Hvis Intersect (Mål, rekkevidde ("C5: C16")), er ingenting da. Trinn 2: Hvis det ikke er noen skjæringspunkt, avslutter prosedyren Exit Sub 'Trinn 3: Hvis det er et kryss, lagre arbeidsboken Else ActiveWorkbook. Lagre trinn 4: Lukk ut If-setningen Slutt hvis sluttdel
I trinn 1 kontrollerer du bare om målcellen (cellen som har endret seg) er i området som er spesifisert av Intersect-metoden. En verdi av ingenting betyr at målcellen ligger utenfor det angitte området.
Trinn 2 tvinger makroen til å stoppe og avslutte prosedyren hvis det ikke er kryss mellom målcellen og det angitte området.
Hvis det er et kryss, brenner Trinn 3 Lagre-metoden i den aktive arbeidsboken, overskriver den forrige versjonen.
I trinn 4 lukker du ganske enkelt If-setningen. Hver gang du starter en If-Then-Else-kontroll, må du lukke den ut med en tilsvarende End If.
Slik bruker du makroen
For å implementere denne makroen, må du kopiere og lime den inn i vinduet Worksheet_Change-hendelseskode. Plassering av makroen gjør det mulig å løpe hver gang du gjør endringer i arket:
-
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 på arket du vil utløse koden fra.
-
I rullegardinmenyen Hendelse velger du Endre hendelsen.
-
Skriv eller lim inn koden i den nyopprettede modulen, og endre rekkeviddeadressen som passer til dine behov.
Skriv inn koden i Arbeidsark Endre-hendelsen.