Office: (Office 2010) Datenbank beenden Fehler

Helfe beim Thema Datenbank beenden Fehler in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Hallo, ich habe eine ältere Datenbank mit MS Access 2010 geöffnet.auf dem obersten Formular gibt es den Button Datenbank schließen. Wenn ich diesen... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von diplom84, 9. März 2014.

  1. Datenbank beenden Fehler


    Hallo,
    ich habe eine ältere Datenbank mit MS Access 2010 geöffnet.auf dem obersten Formular gibt es den Button Datenbank schließen. Wenn ich diesen anklicke erscheint die Fehlermeldung: "Während der Ausführung des Befehls sit ein fehler aufgetreten!" und die Datenbank schließt nicht.Man kann sie jedoch ganz normalüber den schließen Button oben rechts im fenster schließen. Kann mir jemand sagen was das sein könnte oder wonach ich schauen muss?

    Vielen Dank im voraus

    :)
     
    diplom84, 9. März 2014
    #1
  2. Hallo,
    zeige den Code des Buttons.
    Wie sonst soll man helfen können?
     
    gpswanderer, 11. März 2014
    #2
  3. ja sorry das stimmt natürlich
    hier der code des formulars( dieses enthält drei buttons):
    ganz am ende in Zeile 208 steht der text der beim schließen immer ausgegeben wird ich bin aber noch nicht durchgestiegen wo der fehler produziert wird...

    Option Compare Database
    Option Explicit

    Private Sub Form_Open(Cancel As Integer)
    ' Minimize the database window and initialize the form.

    Dim DB As Database
    Set DB = CurrentDb

    On Error GoTo Form_Open_Err

    ' Minimize the database window.
    DoCmd.SelectObject acForm, "Übersicht", True
    DoCmd.Minimize

    ' Datenbanken synchronisieren
    DoCmd.Hourglass True

    If DB.Name "D:\Projekte\Proj0100\Access\Reklamationen2000.mdb" Then
    DB.Synchronize ("\\Tf2000\D\Projekte\Proj0100\Access\Reklamationen2000.mdb")
    End If

    Form_Open_Exit:
    DB.Close
    Me.Refresh

    ' Move to the switchboard page that is marked as the default.
    Me.Filter = "[ItemNumber] = 0 AND [Argument] = 'Standard' "
    Me.FilterOn = True

    DoCmd.Hourglass False
    Exit Sub

    Form_Open_Err:
    ' MsgBox Err.Description
    Resume Form_Open_Exit

    End Sub

    Private Sub Form_Current()
    ' Update the caption and fill in the list of options.

    Me.Caption = Nz(Me![ItemText], "")
    FillOptions

    End Sub

    Private Sub FillOptions()
    ' Fill in the options for this switchboard page.

    ' The number of buttons on the form.
    Const conNumButtons = 8

    Dim dbs As Database
    Dim rst As Recordset
    Dim strSQL As String
    Dim intOption As Integer

    ' Set the focus to the first button on the form,
    ' and then hide all of the buttons on the form
    ' but the first. You can't hide the field with the focus.
    Me![Option1].SetFocus
    For intOption = 2 To conNumButtons
    Me("Option" & intOption).Visible = False
    Me("OptionLabel" & intOption).Visible = False
    Next intOption

    ' Open the table of Switchboard Items, and find
    ' the first item for this Switchboard Page.
    Set dbs = CurrentDb()
    strSQL = "SELECT * FROM [Übersichtseinträge]"
    strSQL = strSQL & " WHERE [ItemNumber] > 0 AND [SwitchboardID]=" & Me![SwitchboardID]
    strSQL = strSQL & " ORDER BY [ItemNumber];"
    Set rst = dbs.OpenRecordset(strSQL)

    ' If there are no options for this Switchboard Page,
    ' display a message. Otherwise, fill the page with the items.
    If (rst.EOF) Then
    Me![OptionLabel1].Caption = "Für diese Übersichtsseite gibt es keine Einträge."
    Else
    While (Not (rst.EOF))
    If Not (dbs.Name "D:\Projekte\Proj0100\Access\Reklamationen2000.mdb" And rst!ItemNumber = 8) Then
    Me("Option" & rst![ItemNumber]).Visible = True
    Me("OptionLabel" & rst![ItemNumber]).Visible = True
    Me("OptionLabel" & rst![ItemNumber]).Caption = rst![ItemText]
    End If
    rst.MoveNext
    Wend
    End If

    ' Close the recordset and the database.
    rst.Close
    dbs.Close

    End Sub

    Private Function HandleButtonClick(intBtn As Integer)
    ' This function is called when a button is clicked.
    ' intBtn indicates which button was clicked.

    ' Constants for the commands that can be executed.
    Const conCmdGotoSwitchboard = 1
    Const conCmdOpenFormAdd = 2
    Const conCmdOpenFormBrowse = 3
    Const conCmdOpenReport = 4
    Const conCmdCustomizeSwitchboard = 5
    Const conCmdExitApplication = 6
    Const conCmdRunMacro = 7
    Const conCmdRunCode = 8

    ' An error that is special cased.
    Const conErrDoCmdCancelled = 2501

    Dim dbs As Database
    Dim rst As Recordset

    On Error GoTo HandleButtonClick_Err

    ' Find the item in the Switchboard Items table
    ' that corresponds to the button that was clicked.
    Set dbs = CurrentDb()
    Set rst = dbs.OpenRecordset("Übersichtseinträge", dbOpenDynaset)
    rst.FindFirst "[SwitchboardID]=" & Me![SwitchboardID] & " AND [ItemNumber]=" & intBtn

    ' If no item matches, report the error and exit the function.
    If (rst.NoMatch) Then
    MsgBox "Während dem Lesen der Tabelle 'Übersichtseinträge' ist ein Fehler aufgetreten."
    rst.Close
    dbs.Close
    Exit Function
    End If

    Select Case rst![Command]

    ' Go to another switchboard.
    Case conCmdGotoSwitchboard
    Me.Filter = "[ItemNumber] = 0 AND [SwitchboardID]=" & rst![Argument]

    ' Open a form in Add mode.
    Case conCmdOpenFormAdd
    DoCmd.OpenForm rst![Argument], , , , acAdd

    ' Open a form.
    Case conCmdOpenFormBrowse
    DoCmd.OpenForm rst![Argument]

    ' Open a report.
    Case conCmdOpenReport
    DoCmd.OpenReport rst![Argument], acPreview

    ' Customize the Switchboard.
    Case conCmdCustomizeSwitchboard
    ' Handle the case where the Switchboard Manager
    ' is not installed (e.g. Minimal Install).
    On Error Resume Next
    Application.Run "WZMAIN80.sbm_Entry"
    If (Err 0) Then MsgBox "Befehl nicht verfügbar."
    On Error GoTo 0
    ' Update the form.
    Me.Filter = "[ItemNumber] = 0 AND [Argument] = 'Standard' "
    Me.Caption = Nz(Me![ItemText], "")
    FillOptions

    ' Exit the application.
    Case conCmdExitApplication
    ' Datenbanken synchronisieren
    DoCmd.Hourglass True
    If dbs.Name "D:\Projekte\Proj0100\Access\Reklamationen2000.mdb" Then
    dbs.Synchronize ("\\Tf2000\D\Projekte\Proj0100\Access\Reklamationen2000.mdb")
    HandleButtonClick_Weiter:
    End If
    DoCmd.Hourglass False
    CloseCurrentDatabase

    ' Run a macro.
    Case conCmdRunMacro
    DoCmd.RunMacro rst![Argument]

    ' Run code.
    Case conCmdRunCode
    Application.Run rst![Argument]

    ' Any other command is unrecognized.
    Case Else
    MsgBox "Unbekannte Option."

    End Select

    ' Close the recordset and the database.
    rst.Close
    dbs.Close

    HandleButtonClick_Exit:
    Exit Function

    HandleButtonClick_Err:
    ' If the action was cancelled by the user for
    ' some reason, don't display an error message.
    ' Instead, resume on the next line.
    If (Err = conErrDoCmdCancelled) Then
    Resume Next
    ElseIf Err = 3024 Then
    ' MsgBox Err.Description
    Resume HandleButtonClick_Weiter
    Else
    MsgBox "Beim Ausführen dieses Befehls ist ein fehler aufgetreten!", [/color]vbCritical
    Resume HandleButtonClick_Exit
    End If

    End Function
     
    diplom84, 11. März 2014
    #3
  4. Datenbank beenden Fehler

    Setz doch das nächste Mal bitte den Code in die Codetags (oben rechts über dem Antwortfenster), so kann man das ja kaum lesen.
    Der Fehler tritt vermutlich in diesem Abschnitt auf (wenn im Fehlermeldungsfenster ein Button "Debuggen" angeboten wird, dann klick da mal drauf und zeige die Zeile, die dann markiert wird):
    Code:
    Möglicherweise stimmen die Pfade/Datenbanknamen für die Synchronisation nicht. Ansonsten wäre noch zu sehen, was die Sub oder Funktion CloseCurrentDatabase macht.

    maike
     
    maikek, 11. März 2014
    #4
  5. danke für die sehr schnellen antworten! werd mir das nochmal genau angucken da ich mich noch nicht so wirklich mit access auskenne weiß ich grad nicht wo ich den code für die funktion CloseCurrentDatabase finde könnt ihr mir da auch helfen? wo finde ich den rest des vba codes? bin einfach auf die entwurfsansicht und dann auf code anzeigen gegangen aber dann seh ich nur diesen code...
     
    diplom84, 11. März 2014
    #5
  6. Die restlichen Teile würde ich mal unter "Module" vermuten (Auflistung alle Access-Objekte oder im VBA-Editor). In Access 2003 erscheint bei Rechtsklick auf den Befehl im Code ein Kontextmenü, bei Auswahl von "Definition" springt der Cursor in die entsprechende Funktion/Sub/Modul).
    maike
     
    maikek, 11. März 2014
    #6
  7. ich glaube die CloseCurrentDatabase funktion ist eine vorgefertigte die schon in access drin ist den genauen code finde ich allerdings gerade nicht
     
    diplom84, 11. März 2014
    #7
  8. Datenbank beenden Fehler

    Stimmt *wink.gif* .
    Ändere doch mal den Text der Messagebox unten:
    Code:
    und versuche, ob eine Fehlernummer und -beschreibung erzeugt wird.
    maike
     
    maikek, 11. März 2014
    #8
  9. das ist die fehlerbeschreibung:

    Dieser Fehler tritt auf, wenn ein Ereignis nicht ausgeführt werden konnte, weil der Speicherort der Logik für das Ereignis nicht ausgewertet werden kann. Falls z. B. die OnOpen-Eigenschaft eines Formulars auf =[Field] festgelegt ist, tritt dieser Fehler auf, weil die Ausführung eines Makros oder Ereignisnamens erwartet wird, wenn das Ereignis auftritt.
     
    diplom84, 11. März 2014
    #9
  10. Hi,

    es kann ja wohl nur am Synchronize-Befehl liegen, teste das mal schrittweise aus und schau was passiert.
    Hast du die Pfade überprüft? Sind evtl. noch geöffnete Objekte vorhanden, wenn der Befehl ausgelöst wird?

    CloseCurrentDatabase ist eine Access-Methode und wird standardmäßig vom Übersichtsmanager zum Beenden der Applikation eingesetzt. Gilt gleichermaßen für mdb und adp.
     
    Anne Berg, 11. März 2014
    #10
  11. Hmm, da bin ich jetzt nicht wirklich klüger. Die Pfade im Code stimmen?
    maike
     
  12. Code:
    naja es gibt gar kein laufwerk D mehr...muss ich dann nur den aktuellen ort der db eintragen? und wmoit synchronisiert access die db, also was sollte an der zweiten adresse liegen?
     
    diplom84, 11. März 2014
    #12
  13. Datenbank beenden Fehler

    hast du schonmal in die Access-Hilfe zu "Synchronize" geschaut?
    Handelt es sich denn überhaupt um ein Replikat? Gibt es jemanden, den du dazu befragen könntest?
     
    Anne Berg, 11. März 2014
    #13
  14. Tja, dein Netz kennst du besser als ich. Woher soll ich wissen, wo du den Kram speicherst *rolleyes.gif* ?
    Der Befehl heißt ja:
    Wenn die db nicht auf Laufwerk D:\... usw. dann Synchronisiere.
    Also versucht das Programm dieses und das läuft dann wohl schief.
    maike
     
  15. naja ich kenn das netzwerk auch noch nicht so gut bin erst seit ein paar tagen damit betraut...

    wenn ich das richtig verstehe: bedeutet eine verneinung? und dann muss also die zweite pfadangabe den aktuellen speicherort entahlten?
     
    diplom84, 11. März 2014
    #15
Thema:

Datenbank beenden Fehler

Die Seite wird geladen...
  1. Datenbank beenden Fehler - Similar Threads - Datenbank beenden Fehler

  2. 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...
  3. LostFocus der Datenbank?

    in Microsoft Access Hilfe
    LostFocus der Datenbank?: Moin, gibt es das LostFocus-Event auch für die Datenbank, z.B. wenn man vom Formular zu Minesweeper wechselt? Oder entzieht Windows dem verlassenen Task sämtliche Aufmerksamkeit? Gruß Doming
  4. Problem Datenstruktur Mitglieds-Datenbank

    in Microsoft Access Hilfe
    Problem Datenstruktur Mitglieds-Datenbank: Hallo Leute, Ich habe eine Frage zu einer Vereins-Mitglieder-Datenbank, die ich erstelle. Die Vereinsmitglieder sind in einer Tabelle erfasst, also Nachname, Vorname, usw. Und es gibt einen...
  5. Auslesen Windowsbenutzer in einer Datenbank

    in Microsoft Access Hilfe
    Auslesen Windowsbenutzer in einer Datenbank: Hallo zusammen, wie kann ich auslesen, welcher Windows Benutzer gerade aktuell in einer Datenbank ist? Geht das? Danke Matthias
  6. Datenbank "Ausfahrtenerfassung" Rudern

    in Microsoft Access Hilfe
    Datenbank "Ausfahrtenerfassung" Rudern: Guten Abend zusammen Ich habe mich entschlossen unsere Papierversion der der Ausfahrtenerfassung unseres Ruderclubs zu aktualisieren. Ich habe also zwei neue Tabellen erstellt. T_FAHRTENBUCH und...
  7. Einfache Datenbank zum Suchen und Öffnen von Dokumentdateien

    in Microsoft Access Hilfe
    Einfache Datenbank zum Suchen und Öffnen von Dokumentdateien: Hallo Office-Gemeinde, ich bin komplett neu hier, Newbie im Bereich Access-Datenbanken, und möchte mich an einem kleinen Projekt versuchen - in der Hoffnung, dass das so überhaupt realisierbar...
  8. Datenbank Abfrage - einzelne Datensätze löschen

    in Microsoft Access Hilfe
    Datenbank Abfrage - einzelne Datensätze löschen: Hey ihr Lieben, ich habe eine Abfrage erstellt, die ich dann automatisiert in Excel habe. Nun ist es aber so, dass in dieser Abfrage 2-3 Datensätze enthalten sind, die sich mehr oder weniger...
  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