Freigeben über


Application.SysCmd-Methode (Access)

Verwenden Sie die SysCmd-Methode, um eine Statusanzeige oder optional angegebenen Text in der status leiste anzuzeigen, Informationen zu Microsoft Access und den zugehörigen Dateien zurückzugeben oder den Zustand eines angegebenen Datenbankobjekts zurückzugeben (um anzugeben, ob das Objekt geöffnet ist, ein neues Objekt ist oder geändert, aber nicht gespeichert wurde). Variant.

Syntax

Ausdruck. SysCmd (Action, Argument2, Argument3)

expression Eine Variable, die ein Application-Objekt darstellt.

Parameter

Name Erforderlich/Optional Datentyp Beschreibung
Aktion Erforderlich AcSysCmdAction Eine AcSysCmdAction-Konstante , die den Typ der auszuführenden Aktion angibt. Diese Konstanten gelten für eine Statusanzeige. Die SysCmd-Methode gibt null zurück, wenn diese Aktionen erfolgreich sind. Andernfalls generiert Access einen Laufzeitfehler.
Argument2 Optional Variant Der Text, der in der Statusleiste linksbündig ausgerichtet ist. Dieses Argument ist erforderlich, wenn das Action-ArgumentacSysCmdInitMeter, acSysCmdUpdateMeter oder acSysCmdSetStatus lautet. Dieses Argument ist für andere Action-Argumentwerte ungültig.

HINWEIS: Wenn Sie den acSysCmdGetObjectState-Wert für den Action-Parameter angeben, müssen Sie die entsprechende AcObjectType-Konstante angeben.
Argument3 Optional Variant Ein numerischer Ausdruck, der die Statusanzeige steuert. Dieses Argument ist erforderlich, wenn das Argument Actionden Wert acSysCmdInitMeter aufweist. Dieses Argument ist für andere Action-Argumentwerte ungültig.

HINWEIS: Wenn Sie den acSysCmdGetObjectState-Wert für den Action-Parameter angeben, müssen Sie den Namen des Datenbankobjekts angeben.

Rückgabewert

Variant

Hinweise

Wenn Sie z. B. einen Assistenten entwickeln, der ein neues Formular erstellt, können Sie mithilfe der SysCmdSysCmd-Methode einen Statusanzeiger anzeigen, der den Fortschritt des Assistenten beim Erstellen des Formulars angibt.

Indem Sie die SysCmdSysCmd-Methode mit den verschiedenen Statusanzeiger-Aktionen aufrufen, können Sie in der Statusleiste einen Statusanzeiger für eine Operation anzeigen, für die die Dauer oder die Anzahl der durchzuführenden Schritte bekannt ist, und den Statusanzeiger aktualisieren, um den Fortschritt der Operation mitzuteilen.

Um eine Fortschrittsanzeige auf der status leiste anzuzeigen, müssen Sie zuerst die SysCmd-Methode mit dem Argument acSysCmdInitMeterAction und den Argumenten Text und Value aufrufen. Wenn das Argument Actionauf acSysCmdInitMeter festgelegt ist, ist das Argument Value der Höchstwert der Verbrauchseinheit oder 100 Prozent.

Um die Verbrauchseinheit so zu aktualisieren, dass der Fortschritt des Vorgangs angezeigt wird, rufen Sie die SysCmd-Methode mit dem AcSysCmdUpdateMeterAction-Argument und dem Value-Argument auf. Wenn das Argument Actionauf acSysCmdUpdateMeter festgelegt ist, verwendet die SysCmd-Methode das Argument Value , um den von der Verbrauchseinheit angezeigten Prozentsatz zu berechnen. Wenn Sie z. B. den Maximalwert auf 200 einstellen und anschließend den Statusanzeiger mit dem Wert 100 aktualisieren, wird der Statusanzeiger bis zur Mitte gefüllt.

Sie können auch den text ändern, der auf der status leiste angezeigt wird, indem Sie die SysCmd-Methode mit dem AcSysCmdSetStatusAction-Argument und dem Text-Argument aufrufen. Während eines Sortiervorgangs könnte der Text z. B. in "Sortiervorgang läuft..." geändert werden. Sobald der Sortiervorgang abgeschlossen ist, könnten Sie die Statusleiste zurücksetzen, indem Sie den Text entfernen. Das Text-Argument kann ungefähr 80 Zeichen enthalten. Da der status Balkentext mithilfe einer proportionalen Schriftart angezeigt wird, wird die tatsächliche Anzahl von Zeichen, die Sie anzeigen können, durch die Gesamtbreite aller Zeichen bestimmt, die durch das Argument Text angegeben werden.

Wenn Sie den in der Statusleiste angezeigten Text verbreitern, wird der Statusanzeiger entsprechend gekürzt. Wenn der Text länger als die status-Leiste ist und das Argument ActionacSysCmdInitMeter lautet, ignoriert die SysCmd-Methode den Text und zeigt nichts in der status leiste an. Wenn der Text länger als die status-Leiste ist und das Argument ActionacSysCmdSetStatus lautet, schneidet die SysCmd-Methode den Text ab, damit er an die status Leiste passt.

Sie können keine leere Zeichenfolge (" ") als Statusleistentext festlegen. Wenn Sie den vorhandenen Text aus der status-Leiste entfernen möchten, legen Sie das Argument Text auf ein einziges Leerzeichen fest. Die folgenden Beispiele zeigen, wie Text aus der Statusleiste entfernt werden kann:

varReturn = SysCmd(acSysCmdInitMeter, " ", 100) 
varReturn = SysCmd(acSysCmdSetStatus, " ")

Wenn die Statusanzeige bereits angezeigt wird, wenn Sie den Text durch Aufrufen der SysCmd-Methode mit dem Argument acSysCmdSetStatusAction festlegen, entfernt die SysCmd-Methode die Verbrauchseinheit automatisch.

Rufen Sie die SysCmd-Methode mit anderen Aktionen auf, um Systeminformationen zu Access zu bestimmen, einschließlich der Versionsnummer von Access, ob es sich um eine Laufzeitversion, den Speicherort der ausführbaren Access-Datei, die Einstellung für das in der Befehlszeile angegebene Argument /profile und den Namen einer .ini Datei handelt, die Access zugeordnet ist.

Hinweis

Sowohl allgemeine als auch benutzerdefinierte Einstellungen für Access werden jetzt in der Windows-Registrierung gespeichert, sodass Sie wahrscheinlich keine .ini Datei mit Ihrer Access-Anwendung benötigen. Das Argument acSysCmdIniFileAction ist aus Gründen der Kompatibilität mit früheren Versionen von Access vorhanden.

Rufen Sie die SysCmd-Methode mit dem acSysCmdGetObjectStateAction-Argument und den Argumenten ObjectType und ObjectName auf, um den Zustand eines angegebenen Datenbankobjekts zurückzugeben. Ein Objekt kann sich in einem von vier möglichen Zuständen befinden: nicht geöffnet oder nicht vorhanden, offen, neu oder geändert, aber nicht gespeichert.

Wenn Sie z. B. einen Assistenten entwickeln, der ein neues Feld in eine Tabelle einfügt, müssen Sie ermitteln, ob die Struktur der Tabelle geändert, aber noch nicht gespeichert wurde, damit Sie die Tabelle speichern können, bevor Sie ihre Struktur ändern. Sie ermitteln den Zustand der Tabelle, indem Sie den von der SysCmdSysCmd-Methode zurückgegebenen Wert auswerten.

Die SysCmd-Methode mit dem acSysCmdGetObjectStateAction-Argument kann eine beliebige Kombination der folgenden Konstanten zurückgeben.

Konstante Zustand des Datenbankobjekts Wert
acObjStateOpen Öffnen 1
acObjStateDirty Entwurf geändert, aber nicht gespeichert 2
acObjStateNew Neu 4

Hinweis

Wenn das Objekt, auf das durch das Argument ObjectName verwiesen wird, entweder nicht geöffnet ist oder nicht vorhanden ist, gibt die SysCmd-Methode den Wert 0 (null) zurück.

Der folgende Code kann verwendet werden, um die Verwendung Ihres ActiveX-Steuerelements in Ausdrücken zu ermöglichen, wenn das ActiveX-Steuerelement einem Formular hinzugefügt wurde.

SysCmd 14, "<ActiveX Control GUID>" 

Hinweis

  • Ersetzen Sie durch <ActiveX Control GUID> die GUID (Globally Unique Identifier), die das ActiveX-Steuerelement identifiziert, das Sie in Ausdrücken aktivieren möchten.
  • Sie können ein ActiveX-Steuerelement nicht entfernen, nachdem es der Liste der zulässigen Steuerelemente hinzugefügt wurde.

Support und Feedback

Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.