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:

  1. Uruchom program Access, a następnie utwórz pustą bazę danych o nazwie TestRun.

  2. Zaimportuj tabelę Customers (Klienci) z przykładowej bazy danych Northwind.mdb.

  3. Utwórz nowy formularz w widoku projektu, a następnie dodaj niepowiązane pole kombi do sekcji szczegółów.

  4. Ustaw następujące właściwości pola kombi:

    Name: cboCountry
    Row Source: SELECT DISTINCT Customers.Country FROM Customers ORDER BY Customers.Country; 
    
  5. Dodaj przycisk polecenia do sekcji szczegółów formularza i nadaj mu nazwę cmdDelete.

  6. Ustaw właściwość OnClick przycisku polecenia na następującą procedurę zdarzenia:

    DoCmd.OpenQuery "qryDeleteCustomers"

  7. Zamknij Redaktor Visual Basic.

  8. Zapisz formularz jako DeleteCustomers, a następnie zamknij go.

  9. Utwórz nowe zapytanie w widoku projektu, a następnie dodaj tabelę Klienci.

  10. 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 .

  11. Przeciągnij gwiazdkę (*) z listy pól do pierwszej kolumny siatki projektu zapytania, a następnie przeciągnij pole Country (Kraj) do drugiej kolumny.

  12. W wierszu Kryteria w kolumnie Country (Kraj) wpisz następujące polecenie:

    Formularzy! [DeleteCustomers]! [cboCountry]

  13. Zapisz zapytanie jako qryDeleteCustomers, a następnie zamknij je.

  14. Otwórz formularz DeleteCustomers w widoku Formularz.

  15. Wybierz kraj z pola kombi, kliknij przycisk polecenia i zanotuj wyświetlone ostrzeżenie. Kliknij pozycję Nie w oknie dialogowym ostrzeżenia.

  16. Otwórz formularz w widoku Projekt, a następnie na pasku narzędzi kliknij przycisk Kod.

  17. 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

  1. Zamknij Redaktor Visual Basic, a następnie zapisz i zamknij formularz.

  2. 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.