Lukk en arbeidsbok ved hjelp av VBA i Microsoft Excel

Anonim

I denne artikkelen lærer vi hvordan du utmerker seg nær arbeidsbok ved hjelp av VBA i Microsoft Excel 2010.

Etter at VBA -makroen / koden din har utført alle nødvendige handlinger, vil du at makroen enten skal lagre filen eller hoppe over å lagre den. Så her er alternativene du kan angi i koden mens du ber den om å lukke filen. Lukk og åpne metoden i VBA kan brukes til å lukke og åpne arbeidsbøker.

Hvis du vil at koden bare skal lukke filen uten å lagre endringene - bruk denne linjen på slutten av koden eller hvor som helst nødvendig -

ActiveWorkbook.Close (False) eller ActiveWorkbook.Close False eller ActiveWorkbook.CloseSaveChanges: = FALSE

Se koden i dette bildet nedenfor. For å kopiere koden, trykk Alt + F11 på tastaturet mens du kontrollerer at Excel -arket er åpent. Høyreklikk deretter på Microsoft Excel -objekter og velg Sett inn. Klikk deretter på Modul. Kopier over koden gitt under bildet -

Alternativ Eksplisitt

Undermakro1 ()

ActiveWorkbook.Close False

Slutt Sub

Merk: Du kan endre teksten ActiveWorkbook til å referere til navnet på arbeidsboken eller variabelen du har brukt for å identifisere arbeidsboken i henhold til koden din.

Hvis du vil at koden skal lagre endringene mens du lukker filen, bruker du

ActiveWorkbook.Close (True) eller ActiveWorkbook.Close True eller ActiveWorkbook.Close SaveChanges: = TRUE

Her er koden -

Alternativ Eksplisitt

Undermakro1 ()

ActiveWorkbook.Close True

Slutt Sub

Men hvis du vil at brukeren skal bestemme, trenger du bare å skrive inn

ActiveWorkbook.Lukk

Her er koden -

Alternativ Eksplisitt

Undermakro1 ()

ActiveWorkbook.Lukk

Slutt Sub

Brukeren får en popup som spør om de vil lagre arbeidsboken eller ikke.

Arbeidsbøker ("File1.XLS"). Lukk SaveChanges: = False

Dette eksemplet vil lukke File1.xls og forkaste eventuelle endringer som er gjort i den.

Konklusjon:

Hvis “Application.DisplayAlerts” er satt til False, får du ikke noen popup, og arbeidsboken lukkes direkte uten å bli bedt om å lagre.

Denne forgrunnsvinduet vil vises hvis "Application.DisplayAlerts" ikke er satt til False hvor som helst før excel vba Activeworkbook.Close kodelinje.

Så selv om koden krever at du slår av varslene, må du kontrollere at "Application.DisplayAlerts = True" er tilstede før linjen Activeworkbook.Close.

Hvis du likte bloggene våre, del den med vennene dine på Facebook. Og du kan også følge oss på Twitter og Facebook.
Vi vil gjerne høre fra deg, gi oss beskjed om hvordan vi kan forbedre, utfylle eller innovere arbeidet vårt og gjøre det bedre for deg. Skriv oss påe -post nettsted