Spezifische Fehlermeldungen anzeigen

09.02.2004

Frage:

Um in meiner Datenbank die mehrfache Eingabe von Personaldaten zu verhindern, habe ich in der Tabelle Personaldaten einen Mehrfelder-Sekundärschlüssel mit der Eigenschaft keine Duplikate erstellt, der im Fall der Eingabe von identischen Personalien verhindert, dass der neue Datensatz gespeichert wird und der statt dessen eine Fehlermeldung produziert.

Wenn ich ein Makro mit den Aktionen Meldung, AusführenBefehl (Argument Rückgängig) und StopAlleMakros auf die Formulareigenschaft Bei Fehler setze, so erscheint meine benutzerdefinierte Fehlermeldung zwar, aber sie erscheint natürlich auch bei allen anderen im Formular auftretenden Fehlern.

Wie kann ich nun eine fehlerspezifische Meldung erzeugen? Wie muss eine VBA-Prozedur aussehen, die diesen Fehler auffängt?

Antwort:

Um Ihre Fehlerprozedur auf VBA zu basieren, setzen Sie zunächst die Eigenschaft Bei Fehler Ihres Formulars auf [Ereignisprozedur]. Geben Sie dann folgende Zeilen im Code-Fenster ein.

Private Sub Form_Error(DataErr As Integer, Response As Integer)

    ' Fehlernummer ausgeben
    MsgBox DataErr
    If DateErr = 30 Then
        DoCmd.RunMacro "MeinMakro"
        Response = acDataErrContinue
    Else
        Response = acDataErrDisplay
    End If

End Sub

Der Parameter DataErr enthält eine eindeutige Fehlernummer, die Sie prüfen können. In diesem Beispiel wird das Makro MeinMakro ausgeführt, falls Fehler 30 auftreten sollte.

Alle anderen Fehler werden mit einer normalen Fehlermeldung quittiert.

Dienstleistungen

Als starker Partner an Ihrer Seite unterstützen wir Sie in folgenden Breichen:

Access-Programmierung

Benötigen Sie Unterstützung bei der Programmierung von Access-Anwendungen? Wir bieten die gesamte Bandbreite von der Access-Programmierung auf Stundenbasis bis zur Durchführung eines Software-Projektes als Auftragsarbeit an. Kontaktieren Sie uns für ein kostenloses Erstgespräch.

Software-Beratung

Haben Sie ein Software-Projekt und Sie wissen nicht, ob Access die richtige Plattform ist? Wir haben über 20 Jahre Erfahrung beim Erstellen von Windows-, Web und mobilen Anwendungen. Kontaktieren Sie uns für eine kostenlose Erstberatung.