Fehler "Aktion fehlgeschlagen. Fehlernummer: 2950" beim Ausführen eines Makros, das eine VBA-Funktion in einer Access-Datenbank aufruft.

Ursprüngliche KB-Nummer: 931407

Hinweis

Wenn Sie ein Small Business-Kunde sind, finden Sie weitere Problembehandlungs- und Lernressourcen auf der Website Support for Small Business.

Symptome

Wenn Sie ein Makro ausführen, das eine VBA-Funktion (Microsoft Visual Basic for Applications) in einer Microsoft Office Access 2007- oder höher-Datenbank aufruft, wird die folgende Fehlermeldung angezeigt:

Aktion fehlgeschlagen
Makroname: Makroname
Bedingung: Bedingung
Makroname: RunCode
Argumente: Argumente
Fehlernummer: 2950

Ursache

Dieses Problem tritt auf, wenn die Datenbank von Access nicht als vertrauenswürdig eingestuft wird. Standardmäßig öffnen zuletzt verwendete Versionen von Access Datenbanken, die im Modus "Deaktiviert" nicht vertrauenswürdig sind. Im Deaktivierten Modus sind ausführbare Inhalte deaktiviert.

Beschluss

Wenn Sie dem Autor der Datenbank vertrauen und wenn Sie die Datenbank aktivieren möchten, verwenden Sie eine der folgenden Methoden.

Methode 1: Aktivieren der Datenbank für die aktuelle Sitzung

Wenn Sie diese Methode verwenden, aktiviert Access die Datenbank, bis Sie die Datenbank schließen. Führen Sie die folgenden Schritte aus, um die Datenbank für die aktuelle Sitzung zu aktivieren:

  1. Klicken Sie auf der Statusleiste auf "Optionen".
  2. Klicken Sie im Dialogfeld "Microsoft Office-Sicherheitsoptionen " auf "Diesen Inhalt aktivieren", und klicken Sie dann auf "OK".

Hinweis

Je nach Access-Version müssen Sie diese Schritte möglicherweise jedes Mal wiederholen, wenn Sie die Datenbank öffnen.

Methode 2: Verschieben der Datenbank an einen vertrauenswürdigen Speicherort

Gehen Sie dazu wie folgt vor:

  1. Ermitteln Sie vertrauenswürdige Speicherorte, in die Sie die Datenbank verschieben können. Gehen Sie dazu wie folgt vor:

    1. Klicken Sie auf "Datei" und dann auf "Optionen".

    2. Klicken Sie auf "Trust Center", und klicken Sie dann unter Microsoft Office Access Trust Center auf Einstellungen für das Trust Center.

    3. Klicken Sie auf "Vertrauenswürdige Speicherorte", und verwenden Sie dann eines der folgenden Verfahren:

      • Beachten Sie die Pfade der aufgelisteten vertrauenswürdigen Speicherorte.
      • Fügen Sie einen neuen vertrauenswürdigen Speicherort hinzu. Klicken Sie hierzu auf "Neuen Speicherort hinzufügen", und geben Sie dann den Pfad des Speicherorts an, den Sie hinzufügen möchten.
  2. Verschieben Sie die Access-Datenbank an den von Ihnen angegebenen vertrauenswürdigen Speicherort.

Mehr Informationen

Sie können ein AutoExec Makro verwenden, um zu testen, ob eine Datenbank vertrauenswürdig ist, wenn Sie die Datenbank öffnen. Darüber hinaus kann das Makro ein Formular öffnen, das benutzern eine angepasste Meldung anzeigt, wenn die Datenbank nicht vertrauenswürdig ist. Diese Meldung informiert Benutzer darüber, dass die Datenbank aktiviert oder als vertrauenswürdig eingestuft werden muss, damit der Code erfolgreich ausgeführt werden kann.

Führen Sie die folgenden Schritte aus, um das AutoExec Makro und das Formular zu erstellen:

  1. Erstellen Sie ein neues Formular in der Entwurfsansicht.

  2. Fügen Sie dem Formular ein Textfeld oder eine Beschriftung hinzu, und geben Sie dann die Informationen ein, die dem Benutzer angezeigt werden sollen.

  3. Speichern Sie das Formular, und schließen Sie es.

  4. Erstellen Sie ein Makro, und benennen Sie dann das Makro AutoExec.

  5. Zeigt die Spalte "Bedingungen " an.

  6. Geben Sie in der Spalte "Bedingungen " die folgende Zeile ein:

    CurrentProject.IsTrusted = False

  7. Klicken Sie in der Spalte "Aktionen" auf "ÖffnenFormular".

  8. Klicken Sie im Feld "Formularname " unter "Aktionsargumente" auf das Formular, das Sie in Schritt 1 erstellt haben.

  9. Speichern Sie das Makro, und schließen Sie es.

Wenn die Datenbank geöffnet wird, wird das AutoExec Makro gestartet und anschließend die IsTrusted Bedingung getestet. Wenn die Datenbank von Access nicht als vertrauenswürdig eingestuft wird, öffnet das Makro das Formular, das Sie in der OpenForm Aktion des Makros angegeben haben.