Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
Fragen zu Tipps & Tricks - Fehlerbehandlung
Gehe zu Seite 1, 2  Weiter
zurück: Angebote und Rechnungen, IDs generieren, Inhalte kopieren... weiter: Mehrfachprüfungen Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Diskussion Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
CoCo84
Im Profil kannst Du frei den Rang ändern


Verfasst am:
22. Dez 2004, 20:17
Rufname:

Fragen zu Tipps & Tricks - Fehlerbehandlung - Fragen zu Tipps & Tricks - Fehlerbehandlung

Nach oben
       

Edit:
Hier könnt ihr alle Fragen zu Tipps & Tricks Fehlerbehandlung stellen.

Hallo!!

Ich habe (mal wieder) ein kleines Problem mit meiner DB. Ich habe eine Tabelle Aufgaben

AufgabenID
Aufgabe
Aufgabentyp (FS)

Das Feld Aufgaben ist indiziert und lässt keine doppelten Datensätz zu. Wenn ich in der in der Datenblattansicht der Tabelle einen doppelten Eintrag erzeugen will erscheint (logisch) eine Fehlermeldung, die das verhindert.
Jetzt mein Problem

Befinde ich mich in dem entsprechenden Formular um eine neue Aufgabe einzutragen, tut er dies, ohne dass er mir eine Fehlermeldung zurückgibt. Der Datensatz wird zwar nicht angefügt, dennoch hätte ich gerne eine Fehlermeldung, da ich vermeiden möchte dass sich der User wundert, weshalb seine Aufgabe unter dieser TypID nicht erscheint.

Ich würde mich freuen, wenn mir jemadn helfen könnte

mfg CoCo
Nachtrag 'Schon taucht der Fehler auf': CoCo84 am 22. Dez 2004 um 19:44 hat folgendes geschrieben:
Hallo zusammen!!

Ich setzt das jetzt einfach mal unter den Punkt Hilfe-zur-Selbsthilfe (was nicht böse gemeint ist).

Ich habe jetzt erkannt wann er die Fehlermeldung bringt und wann nicht. Wenn ich in einen neuen record gehe erscheint sie (wie in der Tabelle), wenn ich das nicht tue und mein Formular einfach schließe, dann kommt die Fehlermeldung nicht..... Schon gut sowas zu wissen..... Vielleicht konnte ich mit dieser Basicinfo noch anderen helfen...

In diesem Sinne

CoCo

_________________
docmd.Do it
devilsadvocate
Access-Zauderlehrling


Verfasst am:
10. Mai 2006, 12:23
Rufname:


AW: Fragen zu Tipps & Tricks - Fehlerbehandlung - AW: Fragen zu Tipps & Tricks - Fehlerbehandlung

Nach oben
       

Hallo,

um eine halbwegs aussagekräftige Fehlermeldung zu erzeugen, welche die Anwender leicht an mich weitergeben können, verwende ich innerhalb der Fehlerbehandlung einer Access-Anwendung bisher die folgende Zeile:
Code:
    MsgBox Err.Description & vbCrLf & "Fehler Nr.: " & Err.number & vbCrLf & _
           "Formular: " & Me.Name
Da der Code eines Formulars aber nur in den seltensten Fällen aus lediglich einem VBA-Modul besteht wäre es mir natürlich nur mehr als recht, wenn ich die Meldung noch ein wenig erweitern könnte. Interessant wären hier zum Beispiel der Name des Moduls in welchem der Fehler aufgetreten ist oder sogar die entsprechende Zeile.

Nun könnte ich selbstverstandlich meinen Code einfach um so etwas wie
Code:
...& "Modul: btn_Save_Click"
erweitern, da ich aber von Natur aus ausgesprochen faul bin würde ich Fehler gerne über einen möglichst universellen Code abhandeln.....

Gibt es entsprechende Befehle mit welchen ich zum Beispiel den Namen des aktuell ausgeführten Moduls ermitteln kann?

Danke im Voraus....

Sebastian
Nouba
nicht ganz unwissend :)


Verfasst am:
10. Mai 2006, 12:52
Rufname:
Wohnort: Berlin

AW: Fragen zu Tipps & Tricks - Fehlerbehandlung - AW: Fragen zu Tipps & Tricks - Fehlerbehandlung

Nach oben
       

Hallo,

die MZ-Tools eignen sich für Schreibfaule. Smile

_________________
mit freundlichen Grüssen Nouba

Wenn beim Lesen eines Beitrags der Eindruck entsteht, dass sich der Fragesteller wenig Mühe gegeben hat, so erhöht das nicht unbedingt die Motivation, eine Antwort zu verfassen.
devilsadvocate
Access-Zauderlehrling


Verfasst am:
02. Aug 2006, 10:01
Rufname:

Re: AW: Fragen zu Tipps & Tricks - Fehlerbehandlung - Re: AW: Fragen zu Tipps & Tricks - Fehlerbehandlung

Nach oben
       

Danke Smile

Diese Tools erleichtern einem wirklich die Arbeit.....

.....und auch sorry wegen der verspäteten Rückmeldung Smile
Stefan1982
Im Profil kannst Du frei den Rang ändern


Verfasst am:
19. Sep 2006, 15:11
Rufname:


AW: Fragen zu Tipps & Tricks - Fehlerbehandlung - AW: Fragen zu Tipps & Tricks - Fehlerbehandlung

Nach oben
       

Hallo,

ich habe ein kleines Formular in dem ich lediglich 2 Werte über Textfelder eingebe. Diese beiden Werte werden dann in eine Tabelle gespeichert. Wichtig ist hierfür, dass immer beide Werte eingegeben werden müssen. Die einzelnen Error-Handlings hab ich bereits realisiert.

Allerdings gibt es einen Fehler, bei dem ich nicht weiter komme. Wenn man in beide Felder einen Wert eingegeben hat und beide Felder wieder löschen will um andere Werte einzugeben, dann erhalte ich die Fehlermeldung:
Zitat:
Das Feld ... kann keinen Null-Wert enthalten, da die Required-Eigenschaft für dieses Feld den Wert True hat. Geben Sie in das Feld einen Wert ein.
Mir ist bewusst, dass ich in den entsprechenden Feldeigenschaften die Eigenschaft "Eingabe erforderlich" eingestellt habe und das soll auch so sein. Ich möchte lediglich diese Fehlermeldung angemessen behandeln zumal ich dann nur noch über das Schließen-Kreuz des Formulars wieder dort rauskomme.

Hat jemand eine Idee wie man das machen könnte?

Gruß

Stefan
Nouba
nicht ganz unwissend :)


Verfasst am:
19. Sep 2006, 20:14
Rufname:
Wohnort: Berlin

AW: Fragen zu Tipps & Tricks - Fehlerbehandlung - AW: Fragen zu Tipps & Tricks - Fehlerbehandlung

Nach oben
       

Hallo Stefan,

das Editieren und das Neuanlegen eines Datensatzes im gebundenen Formular sollte durch die Anweisung Me.Undo rückgängig zu machen sein.

_________________
mit freundlichen Grüssen Nouba

Wenn beim Lesen eines Beitrags der Eindruck entsteht, dass sich der Fragesteller wenig Mühe gegeben hat, so erhöht das nicht unbedingt die Motivation, eine Antwort zu verfassen.
henning007
Philosoph


Verfasst am:
16. Jul 2008, 18:14
Rufname: Henning

AW: Fragen zu Tipps & Tricks - Fehlerbehandlung - AW: Fragen zu Tipps & Tricks - Fehlerbehandlung

Nach oben
       

Hi!

Ich habe eine Frage zu dem betreffenden Artikel. Ich versuche schon die ganze zeit für meine Access 2007 Datenbank einen sinnhafte Fehlerbehandlung zu implementieren. Ich war schon ganz begeistert, dass ich deinen Artikel gefunden hatte, nur steht da nicht die Antwort die ich suche drinnen.

Wie schreibe ich denn eine ganz einfache Fehler-Abfrage die alle Fehler, welche auch in der Standard-MsgBox mitgegeben werden, ausgibt?

Da ich viel mit ODBC aufrufen arbeite bin ich auf diese Informationen sehr angewiesen, kann sie aber nicht auslesen.

Es wäre super wenn mir jemand weiterhelfen könnte.
Vielen vielen Dank!
Nouba
nicht ganz unwissend :)


Verfasst am:
17. Jul 2008, 02:48
Rufname:
Wohnort: Berlin

AW: Fragen zu Tipps & Tricks - Fehlerbehandlung - AW: Fragen zu Tipps & Tricks - Fehlerbehandlung

Nach oben
       

Hallo,

vielleicht hilft Dir der Microsofts Artikel ACC2000: How to Trap Specific ODBC Error Messages ja schon weiter. Ansonsten konkretisiere bitte Deine Frage(n).

_________________
mit freundlichen Grüssen Nouba

Wenn beim Lesen eines Beitrags der Eindruck entsteht, dass sich der Fragesteller wenig Mühe gegeben hat, so erhöht das nicht unbedingt die Motivation, eine Antwort zu verfassen.
henning007
Philosoph


Verfasst am:
17. Jul 2008, 09:34
Rufname: Henning

AW: Fragen zu Tipps & Tricks - Fehlerbehandlung - AW: Fragen zu Tipps & Tricks - Fehlerbehandlung

Nach oben
       

Guten Morgen Smile

Vielen Dank für deinen Link, leider habe ich dort nicht gefunden was ich benötige, deswegen hole ich noch einmal weiter aus:

Ich nutze Access 2007 als Frontend zu einem MS SQL Express Server. Alle Tabellen die ich für die Datenbank benötige habe ich demnach per ODBC in Access 2007 verknüpft.

Die Art und Weise wie ich Daten einzutragen habe, habe ich vor allem auf dem SQL Server modelliert. Dort habe ich zum Beispiel eine Tabelle "Orte" mit der nachfolgenden Struktur:

OrtID
OrtName
OrtLandID

OrtID ist ein autoincrement Wert, OrtName ist selbsterklärend und OrtLand habe ich eingefügt um zu berücksichtigen, dass auf der Welt zwei Orte mit dem selben Namen zweimal nur in einem anderen Land vorkommen.

OrtID ist mein Primärschlüssel, und ich habe einen zweiten zusammengesetzten Index erstellt, welcher prüft, ob die Konstellation von "OrtName & OrtLandID" schon in der Tabelle vorhanden ist. (UNIQUE Index)

Wenn ich z.B. die Werte "Stockholm - Schweden" versuche einzugeben bekomme ich erst die normale
Zitat:
3146 "ODBC Aufruf fehlgeschlagen"
Meldung weil ich die Werte schon eingetragen hatte aber auch diese hier: (siehe Anhang)

Die darin enthaltenen Fehlercodes sind für mich äußerst wichtig, da hier der genaue Grund des ODBCfehlers dargestellt wird. Ich habe bis jetzt versucht in meinem Formular das "bei Fehler" Ereignis mit dem folgenden Makro zu füllen:
Code:
Private Sub Form_Error(DataErr As Integer, Response As Integer)
    Call ErrHandler(DataErr, Response) 'Auslagern weil mehrere Formulare
                    'in der Datenbank in einer Fehlerbehandlungsprozedur
                                          'zusammengefasst werden sollen
End Sub
Code:
Public Sub ErrHandler(d As Integer, r As Integer)
    Select Case d                    'der unten stehende Text stimmt nicht ...
                                          '3146 ist ODBC Aufruf fehlgeschlagen
      Case 3146
        MsgBox "Dieser Datensatz ist schon in der Tabelle" & Chr(13) & _
               "vorhanden und kann nicht ein zweites Mal" & Chr(13) & _
               "eingefügt werden." & Chr(13) & Chr(13) & _
               "Bitte geben Sie andere Daten ein!"
        r = acDataErrDisplay
      Case Else
        MsgBox "Diese Fehlermeldung bitte" & Chr(13) & _
               "an Herrn XXX weiterleiten: " & d
        r = acDataErrDisplay
    End Select
End Sub
Jedoch bekomme ich hier nur den ODBC Aufruf Fehler. Auch dein Link hat mir leider nicht weitergeholfen, da ich DOA (meines Wissens, könnte da auch falsch liegen) bis jetzt null genutzt habe.

Irgendwelche Ideen?! Ich bin für jegliche Hilfe äußerst dankbar,
Grüße Henning



fehler.jpg
 Beschreibung:
 Dateigröße:  29.2 KB
 Angeschaut:  3507 mal

fehler.jpg


J.Picard
Semi


Verfasst am:
20. Feb 2014, 10:15
Rufname:

Fehlerbehandlung in VBA / Access  {Nachgefragt} - Fehlerbehandlung in VBA / Access {Nachgefragt}

Nach oben
       

Wie kann ich diese fertige Lösung sinnvoll in ACC2010 einbauen ?
Eigentlich ist das ja für Excel geschrieben, oder ?
Willi Wipp
Moderator


Verfasst am:
21. Feb 2014, 07:47
Rufname:
Wohnort: Raum Wiesbaden

Re: Fehlerbehandlung in VBA / Access (II) - Re: Fehlerbehandlung in VBA / Access (II)

Nach oben
       

Hi J.Picard,

wie kommst Du denn darauf, das es fuer Excel geschrieben sei?
Wo genau ist Dein Problem in Access 2010?

_________________
Eine kurze Rueckmeldung waere nett
SL Willi Wipp

(Anleitung fuer das Anhaengen von Dateien: Klicke links auf [www], Gaeste muessen sich dafuer anmelden)
DerMega
Im Profil kannst Du frei den Rang ändern


Verfasst am:
31. März 2014, 14:26
Rufname:

AW: Fragen zu Tipps & Tricks - Fehlerbehandlung - AW: Fragen zu Tipps & Tricks - Fehlerbehandlung

Nach oben
       

Hallo Gemeinde,

ich habe ein Problem mit meiner Fehlerbehandlung.
Die wird nämlich einfach ignoriert.
Wenn ich z.B. einen Fehler mit
Code:
Debug.Print 1 / 0
provoziere, poppt ein normaler Access Fehler auf, statt meine MSGBOX.
Das ist besonders ärgerlich, da die Anwendung in einer Runtime beim User läuft und ich so einfach nur einen "Runtime Error " ohne besondere Info bekomme.
Hat da jemand eine Idee, woran das liegen könnte? Google konnte mir nicht helfen :-/

Das ganze sieht bei mir so aus:
Code:
Private Sub beispielSub()
    On Error GoTo myError
    '# Hier steht der Code
myExit:
    Exit Sub
myError:
    MsgBox "Fehler #" & Err.Number & " / " & Err.Description & vbCr & "Modulname: " & Application.VBE.ActiveCodePane.CodeModule.Name, vbCritical, "Fehler #" & Err.Number
    Resume myExit
End Sub
MissPh!
Office-VBA-Programmiererin


Verfasst am:
31. März 2014, 16:20
Rufname:
Wohnort: NRW

AW: Fragen zu Tipps & Tricks - Fehlerbehandlung - AW: Fragen zu Tipps & Tricks - Fehlerbehandlung

Nach oben
       

Hallo,

schau dir mal die Einstellungen in den VBA-Optionen bzgl. "Unterbrechen bei Fehlern", Register "Allgemein" an.

_________________
Gruß MissPh!
DerMega
Im Profil kannst Du frei den Rang ändern


Verfasst am:
01. Apr 2014, 10:51
Rufname:

AW: Fragen zu Tipps & Tricks - Fehlerbehandlung - AW: Fragen zu Tipps & Tricks - Fehlerbehandlung

Nach oben
       

Ah super danke.
Das funktioniert bei mir unter der Vollaccesversion schonmal super.
Aber in der Runtime bei einem User habe ich dauerd einen Fehler, wo die Runtime immer mit einem allgemeinen Runtimeerror aussteigt und ich ums verrecken keinen Fehler anzeigen will.
Nicht mal im Hintergrund in eine Datei schreiben klappt. Er steigt einfach aus.
Und der Fehler kommt mal vor und mal nicht ....

hier mal der Block, wo mir das dauernd passiert:
Code:
Private Sub cboAuftrag_AfterUpdate()
On Error GoTo myError
    '# anderer Code
    DoCmd.SetWarnings False
    DoCmd.OpenQuery "q10DelTmpKomp"
    Forms.fErfassen.sfTmpKompTab.Form.Requery
    Forms.fErfassen.fChargeAuftragTab.SetFocus
    DoCmd.GoToRecord , , acNewRec
    DoCmd.SetWarnings True
    '# anderer Code
myExit:
    Exit Sub
myError:
    MsgBox "Fehler #" & Err.Number & " / " & Err.Description & vbCr _
         & "Modulname: " & Application.VBE.ActiveCodePane.CodeModule.Name _
         , vbCritical, "Fehler #" & Err.Number
    Resume myExit
End Sub
Dazwischen hatte ich schon viele und diverse Zeilen zum Debugging aber nichts hat geholfen, mir den Fehler näher zu bringen.
MissPh!
Office-VBA-Programmiererin


Verfasst am:
01. Apr 2014, 11:38
Rufname:
Wohnort: NRW


AW: Fragen zu Tipps & Tricks - Fehlerbehandlung - AW: Fragen zu Tipps & Tricks - Fehlerbehandlung

Nach oben
       

Hallo,

der Syntaxfehler müsste eigentlich bereits beim Kompilieren angemeckert werden:
Code:
    Forms.fErfassen.sfTmpKompTab.Form.Requery
    Forms.fErfassen.fChargeAuftragTab.SetFocus
So sollte es klappen:
Code:
    Forms!fErfassen!sfTmpKompTab.Form.Requery
    Forms!fErfassen!fChargeAuftragTab.SetFocus

PS:
Um sicher zu gehen, dass die Warnmeldungen wieder eingeschaltet werden, solltest du den Befehl in den Exit-Zweig verschieben.

_________________
Gruß MissPh!


Zuletzt bearbeitet von MissPh! am 01. Apr 2014, 11:46, insgesamt einmal bearbeitet
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Gehe zu Seite 1, 2  Weiter
Diese Seite Freunden empfehlen

Seite 1 von 2
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Access Tabellen & Abfragen: Fragebogen mit fixen Fragen für mehrere IDs 2 Blitzableiter 402 21. März 2010, 01:42
Blitzableiter Fragebogen mit fixen Fragen für mehrere IDs
Keine neuen Beiträge Access Tabellen & Abfragen: FE & BE Problem 16 DADA87 903 18. Jan 2010, 23:41
MissPh! FE & BE Problem
Keine neuen Beiträge Access Tabellen & Abfragen: Anfügeabfrage variabler Tabellen & teilw. geänd. Feldern 3 e-mr 398 13. Jan 2010, 14:42
Gast Anfügeabfrage variabler Tabellen & teilw. geänd. Feldern
Keine neuen Beiträge Access Tabellen & Abfragen: Einige Fragen z.B. Eingabe einer ArtNo und Anzeigen 1 IocusDiabolo 204 13. Nov 2009, 17:54
KlausMz Einige Fragen z.B. Eingabe einer ArtNo und Anzeigen
Keine neuen Beiträge Access Tabellen & Abfragen: Access Datensatzauswahl in Excel & Import 1 G.Ranly 291 24. Apr 2009, 10:14
Gast Access Datensatzauswahl in Excel & Import
Keine neuen Beiträge Access Tabellen & Abfragen: Möglich? Tabellen & Feldbezeichnungen in Variabel speich 3 beat78 400 04. Nov 2008, 23:09
KlausMz Möglich? Tabellen & Feldbezeichnungen in Variabel speich
Keine neuen Beiträge Access Tabellen & Abfragen: Parameterabfrage - Parameterdatum zw. Startdatum & Endda 0 AlexandraB 516 16. Sep 2008, 11:03
AlexandraB Parameterabfrage - Parameterdatum zw. Startdatum & Endda
Keine neuen Beiträge Access Tabellen & Abfragen: Betrag berechnen & Bedingte Formatierung innerhalb einer 1 conti 6197 06. Feb 2008, 11:45
Da Oansa Betrag berechnen & Bedingte Formatierung innerhalb einer
Keine neuen Beiträge Access Tabellen & Abfragen: Abfragen von 2 Spalten & ergebniss in der 3ten wiedergeb 1 Ray-82 497 10. Dez 2007, 12:12
JörgG Abfragen von 2 Spalten & ergebniss in der 3ten wiedergeb
Keine neuen Beiträge Access Tabellen & Abfragen: Datenzugriffseite & Co 0 Scarface1102 400 02. Aug 2007, 13:51
Scarface1102 Datenzugriffseite & Co
Keine neuen Beiträge Access Tabellen & Abfragen: Abfrage mehrerer Checkboxen & eines Textfeldes 4 typh00n 509 25. Apr 2007, 08:58
KlausMz Abfrage mehrerer Checkboxen & eines Textfeldes
Keine neuen Beiträge Access Tabellen & Abfragen: Ein paar Fragen zu meiner Datenbank. Bitte um Hilfe! 5 Gast 710 06. Apr 2007, 16:59
stpimi Ein paar Fragen zu meiner Datenbank. Bitte um Hilfe!
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: Macromedia Dreamweaver