Uwaga: Staramy się udostępniać najnowszą zawartość Pomocy w Twoim języku tak szybko, jak to możliwe. Ta strona została przetłumaczona automatycznie i może zawierać błędy gramatyczne lub nieścisłości. Chcemy, aby ta zawartość była dla Ciebie przydatna. Prosimy o powiadomienie nas, czy te informacje były pomocne, u dołu tej strony. Oto angielskojęzyczny artykuł do wglądu.
Podsumowanie
W programie Microsoft Excel można utworzyć makro VBA (Microsoft Visual Basic for Applications), które pomija monit o zapisAnie zmian podczas zamykania skoroszytu. Można to zrobić, określając stan skoroszytu zapisanej właściwości lub pomijając wszystkie alerty dla skoroszytu.
Więcej informacji
Uwaga: Firma Microsoft dostarcza przykładów programistycznych tylko dla ilustracji, bez żadnych gwarancji wyrażonych wprost lub domyślnie. Dotyczy to, ale nie jest ograniczona do, domniemanych gwarancji dotyczących przydatności handlowej lub przydatności do określonego celu. W tym artykule przyjęto założenie, że znasz język programowania, który jest prezentowany, oraz narzędzia używane do tworzenia i debugowania procedur. Inżynierowie pomocy technicznej firmy Microsoft mogą pomóc w wyjaśnieniu funkcji konkretnej procedury. Nie będą one jednak w stanie modyfikować tych przykładów, aby zapewnić dodatkową funkcjonalność lub konstruować procedury w celu spełnienia określonych wymagań.
Aby przygotować się do wykonania dowolnego z poniższych przykładów, wykonaj następujące kroki:
-
Uruchom program Excel i Otwórz nowy skoroszyt.
-
Naciśnij klawisze ALT + F11, aby uruchomić Edytor Visual Basic.
-
W menu Wstaw kliknij polecenie moduł.
-
Wpisz przykładowy kod makra do arkusza modułu.
-
Naciśnij klawisze ALT + F11, aby wrócić do programu Excel.
-
W programie Microsoft Office Excel 2003 i we wcześniejszych wersjach programu Excel wybierz pozycję makro z menu Narzędzia , a następnie kliknij pozycję makra.
W programie Microsoft Office Excel 2007 kliknij pozycję makra w grupie kod na karcie deweloper .
Jeśli karta deweloper nie jest dostępna, warto wykonać następujące czynności:
sieci. Kliknij przycisk pakietu Microsoft Office , a następnie kliknij pozycję Opcje programu Excel.
b. W kategorii popularne w obszarze najczęściej używane opcje w pracy z programem Excelkliknij, aby zaznaczyć pokaz
. Karta Deweloper na Wstążce , a następnie kliknij przycisk OK. -
Wybierz odpowiednie makro, a następnie kliknij pozycję Uruchom.
Zapisana Właściwość zwraca wartość Fałsz , jeśli wprowadzono zmiany w skoroszycie od momentu ostatniego zapisania.
Aby określić makro, które powinno być uruchamiane przy każdym zamknięciu skoroszytu, możesz użyć zastrzeżonej nazwy procedury Auto_Close . W ten sposób możesz sterować sposobem obsługi dokumentu, gdy użytkownik zamknie dokumenty w programie Excel.
Przykład 1: Zamknięcie skoroszytu bez zapisywania zmian
Aby wymusić zamknięcie skoroszytu bez zapisywania zmian, wpisz następujący kod w module języka Visual Basic tego skoroszytu:
Sub Auto_Close ()
Obiekt. Zapisano = prawda
End Sub
Gdy właściwość Saved jest ustawiona na wartość PRAWDA, program Excel reaguje tak, jakby skoroszyt został już zapisany, a zmiany nie zostały wprowadzone od czasu ostatniego zapisu.
Właściwość DisplayAlerts programu może być używana w tym samym celu. Na przykład poniższa makro wyłącza DisplayAlerts , zamyka aktywny skoroszyt bez zapisywania zmian, a następnie ponownie włącza DisplayAlerts .
Sub CloseBook ()
Application. DisplayAlerts = false
ActiveWorkbook. zamk
Application. DisplayAlerts = true
End Sub
Możesz również użyć argumentu SaveChanges metody Close .
Poniższe makro zamyka skoroszyt bez zapisywania zmian:
Sub CloseBook2()
ActiveWorkbook.Close savechanges:=False
End Sub
Przykład 2: Zamknięcie skoroszytu i zapisanie zmian
Aby wymusić zapisywanie zmian w skoroszycie, wpisz następujący kod w module języka Visual Basic tego skoroszytu:
Sub Auto_Close ()
Jeśli obiekt. Saved = FAŁSZ,
Obiekt. Zapisz zakończenie, jeśli
End Sub
Ta procedura sprawdza, czy właściwość Zapisano plik została ustawiona na wartość FAŁSZ. Jeśli tak, skoroszyt został zmieniony od czasu ostatniego zapisu, a zmiany te zostaną zapisane.