W tym artykule dowiemy się, jak doskonale zamknąć skoroszyt za pomocą VBA w programie Microsoft Excel 2010.
Po wykonaniu wszystkich wymaganych działań przez makro / kod VBA, chcesz, aby makro zapisało plik lub pominęło zapisywanie go. Oto opcje, które możesz ustawić w kodzie, prosząc go o zamknięcie pliku. Metoda Close and Open w VBA może służyć do zamykania i otwierania skoroszytów.
Jeśli chcesz, aby kod po prostu zamykał plik bez zapisywania zmian - użyj tego wiersza na końcu kodu lub w dowolnym miejscu -
ActiveWorkbook.Close (Fałsz) lub ActiveWorkbook.Zamknij Fałsz lub ActiveWorkbook.CloseSaveChanges:=FALSE
Zobacz kod na tym obrazku poniżej. Aby skopiować kod, naciśnij Alt + F11 na klawiaturze, upewniając się, że arkusz Excela jest otwarty. Następnie kliknij prawym przyciskiem myszy Obiekty Microsoft Excel i wybierz Wstaw. Następnie kliknij Moduł. Skopiuj kod podany poniżej obrazka -
Opcja Wyraźna
Submakro1()
ActiveWorkbook.Zamknij Fałsz
Napis końcowy
Uwaga: Możesz zmienić tekst ActiveWorkbook, aby odwoływał się do nazwy skoroszytu lub zmiennej użytej do identyfikacji skoroszytu zgodnie z kodem.
Jeśli chcesz, aby kod zapisał zmiany podczas zamykania pliku, użyj
ActiveWorkbook.Close (prawda) lub ActiveWorkbook.Close Prawda lub ActiveWorkbook.Zamknij ZapiszZmiany:=TRUE
Oto kod -
Opcja Wyraźna
Submakro1()
ActiveWorkbook.Close Prawda
Napis końcowy
Jeśli jednak chcesz, aby użytkownik decydował, wystarczy wejść
ActiveWorkbook.Zamknij
Oto kod -
Opcja Wyraźna
Submakro1()
ActiveWorkbook.Zamknij
Napis końcowy
Użytkownik otrzyma wyskakujące okienko z pytaniem, czy chce zapisać skoroszyt, czy nie.
Skoroszyty("Plik1.XLS").Zamknij ZapiszZmiany:=Fałsz
Ten przykład zamknie plik File1.xls i odrzuci wszelkie wprowadzone w nim zmiany.
Wniosek:
Jeśli opcja „Application.DisplayAlerts” została ustawiona na False, nie pojawi się żadne wyskakujące okienko, a skoroszyt zostanie bezpośrednio zamknięty bez monitowania o zapisanie.
To wyskakujące okienko pojawi się, jeśli „Application.DisplayAlerts” nie jest ustawione na False w dowolnym miejscu przed Excelem vba Activeworkbook.Close linii kodu.
Dlatego nawet jeśli kod wymaga wyłączenia alertów, upewnij się, że przed wierszem Activeworkbook.Close znajduje się „Application.DisplayAlerts = True”.
Jeśli podobały Ci się nasze blogi, podziel się nimi ze znajomymi na Facebooku. A także możesz śledzić nas na Twitterze i Facebooku.
Chcielibyśmy usłyszeć od Ciebie, daj nam znać, jak możemy ulepszyć, uzupełnić lub unowocześnić naszą pracę i uczynić ją lepszą dla Ciebie. Napisz do nas nawitryna e-mail