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

Kunden aus kleinen Unternehmen finden zusätzliche Problembehandlungs- und Lernressourcen auf der Website Support für kleine Unternehmen.

Symptome

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

Aktion fehlgeschlagen
Makroname: MacroName
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 aktuelle Versionen von Access Datenbanken, die im deaktivierten Modus nicht vertrauenswürdig sind. Im Deaktivierten Modus ist ausführbarer Inhalt deaktiviert.

Lösung

Wenn Sie dem Autor der Datenbank vertrauen und 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 Meldungsleiste 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. Bestimmen Sie vertrauenswürdige Speicherorte, an 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 dann unter Microsoft Office Access Trust Center aufTrust Center-Einstellungen.

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

      • Notieren Sie sich 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.

Weitere Informationen

Sie können ein AutoExec Makro verwenden, um zu testen, ob eine Datenbank beim Öffnen der Datenbank vertrauenswürdig ist. 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 vertrauenswürdig sein 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 Bezeichnung hinzu, und geben Sie dann die Informationen ein, die dem Benutzer angezeigt werden sollen.

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

  4. Erstellen Sie ein Makro, und nennen Sie 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 OpenForm.

  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 dann.

Wenn die Datenbank geöffnet wird, wird das AutoExec Makro gestartet und dann 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.