Office: (Office 2010) Laufzeitfehler 91 trotz On Error Goto Sprungmarke

Helfe beim Thema Laufzeitfehler 91 trotz On Error Goto Sprungmarke in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Nur zum Verständnis: Ich meinte mit Fehlerbehandlung die Fehlerbehandlung in Form_Open. Code: Private Sub Form_Open(Cancel As Integer) On Error GoTo... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von danthobee, 18. Februar 2017.

  1. Laufzeitfehler 91 trotz On Error Goto Sprungmarke


    Nur zum Verständnis:
    Ich meinte mit Fehlerbehandlung die Fehlerbehandlung in Form_Open.
    Code:
     
    Josef P., 21. Februar 2017
    #31
  2. Hallo danthobee bzw. Daniel,

    womöglich tritt der Fehler in der Fehlerroutine selbst auf:
    Code:
    Ersetze mal probeweise den kompletten If-Endif-Teil durch ein einfaches Debug.Print Err

    Freundliche Grüße
    readonly *Smilie
     
    readonly, 21. Februar 2017
    #32
  3. \@Josef,
    er erstellt ja eine Connection auf das Frontend.
    Da kann er ja gleich CurrentConnection verwenden, die ja offen ist, wenn auch keine Verbindung zum Backend besteht. Deshalb auch kein Fehler.

    Dann greift er über eine Verknüpfung zu und dann wird erst beim open des Recordset der Fehler erzeugt, da die Datenbank nicht erreichbar ist.

    Aus meiner Sicht ist die gesamte Vorgehensweise ein Unfug.

    LG Markus

    Edit:
    Denn noch vermisse ich die entsprechende ADO Fehlermeldung, statt Err.Number 91
     
    markusxy, 22. Februar 2017
    #33
  4. Laufzeitfehler 91 trotz On Error Goto Sprungmarke

    Danke, das hab ich übersehen.
    Als ich die ADODB-Connection sah, ging ich von einer direkten Verbindung zum Server aus - die Gewohnheit hat zugeschlagen. *wink.gif*

    mfg
    Josef
     
    Josef P., 22. Februar 2017
    #34
  5. \@Markus:
    Das heißt im Umkehrschluss, die verknüpften Tabellen raus schmeißen und eine direkte Verbindung zum SQL Server herzustellen?

    Was fehlt hier? Das verstehe ich noch nicht ganz.

    @josef:
    Also eigene Subs für jede auszuführende Aufgabe gestalten in der dann auch die entsprechende Fehlerbehandlung stattfindet?

    Ja, dann wird die Datenbank beendet.

    @readonly:
    Der Fehler tritt vor der Fehlerroutine auf, in der Fehlerroutine selbst ist ebenfalls eine eigene Fehlerbehandlung implementiert.

    Nochmal konkret: Wie erreiche ich das keine Accesseigene Meldung kommt sondern die Messagebox mit meiner eigenen Fehlermeldung aus der Fehlerbehandlungsroutine und dem anschließenden DoCmd.Quit?

    LG Daniel
     
    danthobee, 22. Februar 2017
    #35
  6. Genau. Wichtig wäre halt, dass du ein Konzept verfolgst und verstehst was du tust. Nicht einfach nur auf Zuruf Änderungen durchführen.
    Hast du auch Reports?

    Das geht nmM nicht. Ändere den Zugriff, dann ist das Problem gelöst.

    Kannst du den Code mal zeigen?
    Warum willst du exklusiv öffnen?

    LG M
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    markusxy, 22. Februar 2017
    #36
  7. Das stammt noch von meinem Vorgänger und aus der Zeit als die Datenbank noch auf dem Netzlaufwerk lag. Da durfte sie NICHT exklusiv geöffnet werden. Habe diesen Codeteil jetzt aber raus geschmissen. Das war der Code:

    Code:
    Na ein Konzept habe ich, scheint wohl aber nicht optimal zu sein - zumindest so wie ich eure Anmerkungen verstehe *Smilie

    Es sind keine Reports enthalten allerdings Abfragen, die in Formularen bzw. im VBA genutzt werden. Insofern werde ich wohl die verknüpften Tabellen vorerst behalten.


    Was meinst du mit Zugriff ändern? Das ich die Datenbank Connection wie im Codebeispiel von dir implementiere:

    Code:
    Mir will einfach nicht in den Kopf warum er im derzeitigen Coding nicht in die Fehlerbehandlung springt sondern die eigene Fehlermeldung ausspuckt.

    LG Daniel
     
    danthobee, 22. Februar 2017
    #37
  8. Laufzeitfehler 91 trotz On Error Goto Sprungmarke

    Ich habs vermutlich zuerst falsch verstanden

    Es ging darum das Frontend nicht exklusiv zu öffnen, damit alle mit demselben Frontend arbeiten konnten.

    Aber wehe es kommt zu einem Fehler außer dem Fehler 70.
    Dann läuft der Error Prozess in einer Schleife, bis der Prozess gekillt wird, oder der Rechner abschmiert.
     
    markusxy, 22. Februar 2017
    #38
  9. Meiner Meinung wird nach dem Fehler im normalen Programm nochmal ein Fehler in der Fehlerbehandlung ausgelöst.

    Du setzt
    Code:
    sehr spät nach der On Error Goto Anweisung und löst es wieder sehr früh vor dem Exit auf

    Code:
    Wenn vorher oder nachher ein Fehler auftritt, dann existiert fso noch nicht bzw. ist schon Nothing und somit kommt es in der Netzwerkprüfung (If Not fso.Folderexists…) zu dem weiteren Fehler 91. Ein Fehler in der Fehlerbehandlung kann sich nicht selbst behandeln, somit kommt die normale Access-Fehlermeldung.

    Deshalb auch mein Ratschlag im o. a. Beitrag, die Fehlerbehandlung testweise mal zu vereinfachen.

    Aber wenn du es nicht testen willst,


    Im übrigen würde ich Fehlerbehandlungen nicht als Netzwerkprüfung sondern als Fehlerbehandlung oder Errorhandler oder Ähnliches bezeichnen, denn dann weiß man sofort, dass das ein besonderer Programmabschnitt ist.

    Freundliche Grüße
    readonly
     
    readonly, 22. Februar 2017
    #39
  10. Interessanter Gedanke von readonly!

    In der Error Verarbeitung gibt es auch die Anweisung:

    Form_frmTimer.Form.TimerInterval = 0

    Ist "Form_frmTimer" ein Subform Control und wofür ist der Timer jede Sekunde?
    Funktioniert die Anweisung fehlerfrei?
    LG Markus
     
    markusxy, 22. Februar 2017
    #40
  11. In der Fehlerbehandlung tritt kein weiterer Fehler auf. Der Fehler tritt auf, bevor er in die Fehlerbehandlung springt. Sobald die Fehlerbehandlung greift wird der Code wie von mir gewünscht und implementiert abgearbeitet. Nur tritt der Fehler 91 mit der Access Meldung auf bevor er die Fehlerbehandlungsroutine abarbeitet. Somit kann der Fehler ja nicht in der Fehlerbehandlungsroutine liegen, oder?

    Was möchte ich nicht testen? Ich verstehe nicht was genau du meinst?

    Damit wird der Timer im "hidden"-Formular deaktiviert. Das versteckte Formular steuert die zeitgesteuerten Aktionen und dient der sekündlichen Aktualisierung von Feldern. Hierbei tritt kein Fehler auf.

    LG Daniel
     
    danthobee, 22. Februar 2017
    #41
  12. Wenn das Fehlermeldungsfenster mit dem Fehler 91 erscheint und du anschließend auf Debuggen klickst, stoppt VBA und es ist eine Programmzeile markiert. Bitte diese Programmzeile mal hier posten.

    Freundliche Grüße
    readonly
     
    readonly, 23. Februar 2017
    #42
  13. Laufzeitfehler 91 trotz On Error Goto Sprungmarke

    Die Fehlerstelle hatte ich bereits im Post vom 21.02.2017 um 15:03 Uhr gepostet. Habe den Screenshot hier nochmal angehängt und die Zeile mit Orange im Code unten vermerkt.

    Er springt auf die Zeile und wirft den Fehler beim Klick auf Debuggen.

    Die vorgehende Codezeile von der er in die Fehlerbehandlung springt habe ich nachfolgend rot markiert:

    Code:
    LG Daniel
     
    danthobee, 23. Februar 2017
    #43
  14. 1. Ergänze mal den fehlenden roten Teil (…, sAktiverCodeabschnitt As String) beim letzten Argument in deinem Programmcode:
    Code:
    2. Probier es nochmal aus. Wenn wieder der Fehler 91 kommt, dann wieder debuggen und in der markierten Zeile stehen bleiben, sodass VBA gestoppt aber nicht beendet ist! Anschließénd im Direktbereich jedes Argument einzeln ausdrucken:

    ? CLng(Err.Number)
    ? CStr(Err.Description)
    ? CStr(Application.VBE.ActiveCodePane.CodeModule.Parent.NAME)
    ? CStr("Form_Open")

    Kommt da bei irgendeinem eine Fehlermeldung?

    Freundliche Grüße
    readonly
     
    readonly, 23. Februar 2017
    #44
  15. Oh, danke ist mir noch gar nicht aufgefallen. Ist ergänzt.

    Leider nein, wird alles korrekt im Direktbereich angezeigt.

    Mich irritiert es total, dass der Code nach dem Klick auf Debuggen tadellos durch läuft - heißt die Meldung wird angezeigt und die Datenbank beendet.

    Was vll. noch wichtig sein könnte und mir gerade aufgefallen ist:
    Die Err.Number = 0 und die Err.Description ist leer nach dem Klick auf Debuggen.

    LG Daniel
     
    danthobee, 23. Februar 2017
    #45
Thema:

Laufzeitfehler 91 trotz On Error Goto Sprungmarke

Die Seite wird geladen...
  1. Laufzeitfehler 91 trotz On Error Goto Sprungmarke - Similar Threads - Laufzeitfehler trotz Error

  2. VBA:Laufzeitfehler beim Einlesen in Variable

    in Microsoft Excel Hilfe
    VBA:Laufzeitfehler beim Einlesen in Variable: Hallo Excel Freaks, ich habe eine Frage, ein Problem wo ich nicht mehr weiter weis.... In eine Exceldatei kopiere ich mir über Makro auf ein Tabellenblatt von anderen Exceldateien das...
  3. Datenbank bleibt gesperrt - laccdb wird nicht gelöscht

    in Microsoft Access Hilfe
    Datenbank bleibt gesperrt - laccdb wird nicht gelöscht: Hallo zusammen, ich betreue eine Datenbank mit getrenntem Back- und Frontend, die in einem Firmennetzwerk auf dem Netzlaufwerk liegt. Ich entwickle sie lokal weiter, ohne vor Ort zu sein, wobei...
  4. Access Laufzeitfehler 3048

    in Microsoft Access Hilfe
    Access Laufzeitfehler 3048: Bevor ihr Euren Code durchrackert, weil Access plötzlich Probleme macht: Die Version 2408 (Build 17928.20114) dürfte ein wenig misslungen sein! Access bleibt nach dem Schließen im Taskmanager...
  5. Laufzeitfehler 9 VBA

    in Microsoft Excel Hilfe
    Laufzeitfehler 9 VBA: Nschdem ich die Office Version von 2010 auf 2019 aktualisiert habe wird mir der Laufzeitfehler 9 ausgegeben. Das ist der Code Sub FiberCollect() Dim NumRows As Long 'letzte celle Dim Counter As...
  6. VBA Laufzeitfehler 9

    in Microsoft Excel Hilfe
    VBA Laufzeitfehler 9: Guten Abende an alle VBA Profi, Ich lerne gerade Programmierung mit VBA und habe fast null Ahnung von Fehlern ich habe folgenden Probleme. ich einen xlsm Datei versuche eine Tabelle mit codename...
  7. Laufzeitfehler 13 trotz korrekter Funktion!

    in Microsoft Excel Hilfe
    Laufzeitfehler 13 trotz korrekter Funktion!: Hallo, ich habe ein kleines Programm geschrieben, dass nach Stählen in einer Tabelle sucht und dann die Daten des gesuchten Stahls herausgibt. Ich gebe also den gesuchten Stahl (z.B. CS70) ein...
  8. Laufzeitfehler trotz Fehlerbehandlung

    in Microsoft Access Hilfe
    Laufzeitfehler trotz Fehlerbehandlung: Hallo, ich bin grad dabei eine Access Datenbank zu bearbeiten und um eine Mailfunktion die ich im Internet gefunden habe zu erweitern. Auf meinem PC funktioniert das ganze auch wunderbar, auf...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden