Jak wyłączyć komunikaty ostrzegawcze w aplikacji programu Access za pomocą metody SetOption
Umiarkowane: wymaga podstawowych umiejętności w zakresie makra, kodowania i współdziałania.
Ten artykuł dotyczy tylko bazy danych programu Microsoft Access (.mdb lub .accdb).
Podsumowanie
W tym artykule przedstawiono sposób używania metody Application.SetOption do wyłączania komunikatów ostrzegawczych w aplikacji programu Access.
Więcej informacji
Firma Microsoft podaje przykłady programowania tylko dla celów ilustracyjnych, nie udzielając żadnej rękojmi, wyrażonej wprost ani dorozumianej, w tym także, ale nie tylko, dorozumianej rękojmi co do przydatności handlowej lub do określonych celów. W tym artykule zakłada się, że czytelnik zna demonstrowany język programowania oraz narzędzia używane do tworzenia i debugowania procedur. Inżynierowie pomocy technicznej firmy Microsoft mogą pomóc w objaśnieniu funkcjonalności określonej procedury, ale nie zmodyfikują tych przykładów w celu zapewnienia dodatkowych funkcji lub procedur konstruowania w celu spełnienia określonych wymagań. Zapytania akcji i inne procesy, które dołączają, usuwają lub modyfikują dane, zwykle wyświetlają użytkownikowi ostrzeżenie, że dane mają zostać zmodyfikowane. Jednak w aplikacji w czasie wykonywania często pożądane jest wyłączenie ostrzeżeń, ponieważ kontrole i środki ostrożności zwykle wykraczają poza kontrolę użytkownika.
Można to zrobić za pomocą metody SetWarnings obiektu DoCmd, ale możesz chcieć wyłączyć ostrzeżenia dla całej aplikacji. W tym celu można użyć metody SetOption obiektu Application. Jeśli jednak to zrobisz, należy również ponownie włączyć ostrzeżenia po zamknięciu aplikacji.
Aby to zrobić w prostej, jednoformałowej aplikacji, wykonaj następujące kroki:
Uruchom program Access, a następnie utwórz pustą bazę danych o nazwie TestRun.
Zaimportuj tabelę Customers (Klienci) z przykładowej bazy danych Northwind.mdb.
Utwórz nowy formularz w widoku projektu, a następnie dodaj niepowiązane pole kombi do sekcji szczegółów.
Ustaw następujące właściwości pola kombi:
Name: cboCountry Row Source: SELECT DISTINCT Customers.Country FROM Customers ORDER BY Customers.Country;
Dodaj przycisk polecenia do sekcji szczegółów formularza i nadaj mu nazwę cmdDelete.
Ustaw właściwość OnClick przycisku polecenia na następującą procedurę zdarzenia:
DoCmd.OpenQuery "qryDeleteCustomers"
Zamknij Redaktor Visual Basic.
Zapisz formularz jako DeleteCustomers, a następnie zamknij go.
Utwórz nowe zapytanie w widoku projektu, a następnie dodaj tabelę Klienci.
W programie Access 2002 lub w programie Access 2003 kliknij pozycję Usuń zapytanie w menu Zapytanie .
W programie Access 2007 kliknij pozycję Usuń w grupie Typ zapytania na karcie Projekt .
Przeciągnij gwiazdkę (*) z listy pól do pierwszej kolumny siatki projektu zapytania, a następnie przeciągnij pole Country (Kraj) do drugiej kolumny.
W wierszu Kryteria w kolumnie Country (Kraj) wpisz następujące polecenie:
Formularzy! [DeleteCustomers]! [cboCountry]
Zapisz zapytanie jako qryDeleteCustomers, a następnie zamknij je.
Otwórz formularz DeleteCustomers w widoku Formularz.
Wybierz kraj z pola kombi, kliknij przycisk polecenia i zanotuj wyświetlone ostrzeżenie. Kliknij pozycję Nie w oknie dialogowym ostrzeżenia.
Otwórz formularz w widoku Projekt, a następnie na pasku narzędzi kliknij przycisk Kod.
W oknie Kod wpisz lub wklej następujące procedury:
Private Sub Form_Load()
Application.SetOption "Confirm Action Queries", 0
Application.SetOption "Confirm Document Deletions", 0
Application.SetOption "Confirm Record Changes", 0
End Sub
Private Sub Form_Unload(Cancel As Integer)
Application.SetOption "Confirm Action Queries", 1
Application.SetOption "Confirm Document Deletions", 1
Application.SetOption "Confirm Record Changes", 1
End Sub
Zamknij Redaktor Visual Basic, a następnie zapisz i zamknij formularz.
Otwórz formularz DeleteCustomers, wybierz kraj, a następnie kliknij przycisk polecenia.
Pamiętaj , że żadne okno dialogowe ostrzeżenia nie jest wyświetlane.
W tym przykładzie opcje potwierdzania aplikacji są wyłączone po załadowaniu i ponownym włączeniu formularza DeleteCustomers po jego rozładowaniu. W bardziej rozbudowanej aplikacji możesz wykonywać te same akcje w formularzu uruchamiania lub tablicy przełączania.
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla