Applies ToAccess für Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Hinweis: Die in diesem Thema beschriebene Funktion, Methode, Objekt oder Eigenschaft ist deaktiviert, wenn der Microsoft Jet-Ausdrucksdienst im Sandboxmodus ausgeführt wird, der die Auswertung potenziell unsicherer Ausdrücke verhindert. Weitere Informationen zum Sandboxmodus finden Sie, wenn Sie in der Hilfe nach "Sandboxmodus" suchen.

Erstellt einen Verweis auf ein ActiveX-Objekt und gibt diesen zurück

Syntax

CreateObject ( Klasse [, Servername] )

Die Syntax der Funktion CreateObject weist die folgenden Argumente auf:

Argument

Beschreibung

Klasse

Erforderlich. Variant (String). Der Name der Anwendung und die Klasse des zu erstellenden Objekts.

Servername

Optional. Variant (String). Der Name des Netzwerkservers, auf dem das Objekt erstellt wird. Wenn Servername eine leere Zeichenfolge ("") ist, wird der lokale Computer verwendet.

Das Klasse-Argument verwendet die Syntax Anwendungsname.Objekttyp und hat folgende Teile:

Teil

Beschreibung

appname

Erforderlich. Variant (String). Der Name der Anwendung, die das Objekt bereitstellt.

Objekttyp

Erforderlich. Variant (String). Typ oder Klasse des zu erstellenden Objekts.

Hinweise

Jede Anwendung, die die Automatisierung unterstützt, stellt mindestens einen Objekttyp bereit. Eine Anwendung zur Textverarbeitung kann beispielsweise ein Application-Objekt, ein Document-Objekt und ein Toolbar-Objekt bereitstellen.

Um ein ActiveX-Objekt zu erstellen, weisen Sie das von CreateObject zurückgegebene Objekt einer Objektvariablen zu:

Hinweis: Die folgenden Beispiele zeigen die Verwendung dieser Funktion in einem VBA-Modul (Visual Basic for Applications). Wenn Sie weitere Informationen zum Arbeiten mit VBA wünschen, wählen Sie Entwicklerreferenz in der Dropdownliste neben Suchen aus, und geben Sie einen oder mehrere Begriffe in das Suchfeld ein.

' Declare an object variable to hold the object ' reference. Dim as Object causes late binding. Dim ExcelSheet As ObjectSet ExcelSheet = CreateObject("Excel.Sheet")

In diesem Beispiel automatisieren wir ein Excel-Tabellenkalkulationsobjekt aus einer Access-Datenbank heraus. Mit diesem Code wird die Anwendung gestartet, um das Objekt zu erstellen, in diesem Fall ein Microsoft Excel-Arbeitsblatt. Sobald ein Objekt erstellt wurde, verweisen Sie unter Verwendung der Objektvariable, die Sie erstellt haben, im Code darauf. Im folgenden Beispiel greifen Sie auf Eigenschaften und Methoden des neuen Objekts mithilfe der Objektvariablen ExcelSheet und anderer Microsoft Excel-Objekte einschließlich des Application-Objekts und der Auflistung Cells zu.

' Make Excel visible through the Application object.ExcelSheet.Application.Visible = True' Place some text in the first cell of the sheet.ExcelSheet.Application.Cells(1, 1).Value = "This is column A, row 1"' Save the sheet to C:\test.xls directory.ExcelSheet.SaveAs "C:\TEST.XLS"' Close Excel with the Quit method on the Application object.ExcelSheet.Application.Quit' Release the object variable.Set ExcelSheet = Nothing

Durch das Deklarieren einer Objektvariablen mit der As Object -Klausel wird eine Variable erstellt, die einen Verweis auf einen beliebigen Objekttyp enthalten kann. Der Zugriff auf das Objekt über diese Variable ist jedoch spät gebunden. Das heißt, die Bindung erfolgt, wenn Das Programm ausgeführt wird. Deklarieren Sie die Objektvariable mit einer bestimmten Klassen-ID, um eine Objektvariable zu erstellen, die zu einer frühen Bindung führt, d. h. einer Bindung bei der Kompilierung des Programms. Beispielsweise können Sie die folgenden Excel-Verweise deklarieren und erstellen:

Dim xlApp As Excel.Application Dim xlBook As Excel.WorkbookDim xlSheet As Excel.WorkSheetSet xlApp = CreateObject("Excel.Application")Set xlBook = xlApp.Workbooks.AddSet xlSheet = xlBook.Worksheets(1)

Der Verweis durch eine früh gebundene Variable kann die Leistung verbessern, jedoch nur einen Verweis auf die Klasse enthalten, die in der Deklaration angegeben ist.

Sie können ein von der Funktion CreateObject zurückgegebenes Objekt an eine Funktion übergeben, die ein Objekt als Argument erwartet. Der folgende Code erstellt und übergibt beispielsweise einen Verweis auf ein Excel-Anwendungsobjekt:

Call MySub (CreateObject("Excel.Application"))

Sie können ein Objekt auf einem Remotenetzwerkcomputer erstellen, indem Sie den Namen des Computers an das Argument Servername von CreateObject übergeben. Dieser Name stimmt mit dem Computernamensteil eines Freigabenamens überein: Bei einem Freigabenamen "\\MyServer\Public" lautet der Servername "MyServer".

Hinweis:  Weitere Informationen zur Sichtbarmachung einer Anwendung auf einem Remotenetzwerkcomputer finden Sie in der COM-Dokumentation (siehe Microsoft Developer Network). Möglicherweise müssen Sie für Ihre Anwendung einen Registrierungsschlüssel hinzufügen.

Der folgende Code gibt die Versionsnummer einer Instanz von Excel zurück, die auf einem Remotecomputer namens MyServer ausgeführt wird:

Dim xlApp As ObjectSet xlApp = CreateObject("Excel.Application", "MyServer")Debug.Print xlApp.Version

Wenn der Remoteserver nicht vorhanden oder nicht verfügbar ist, tritt ein Laufzeitfehler auf.

Hinweis:  Verwenden Sie CreateObject, wenn keine aktuelle Instanz des Objekts existiert. Wird bereits eine Instanz des Objekts ausgeführt, wird eine neue Instanz gestartet und ein Objekt des angegebenen Typs erstellt. Um die aktuelle Instanz zu verwenden oder die Anwendung zu starten und eine Datei laden zu lassen, verwenden Sie die Funktion GetObject.

Wenn sich ein Objekt als Objekt mit einer einzigen Instanz selbst registriert hat, wird nur eine Instanz des Objekts erstellt, unabhängig davon, wie oft CreateObject ausgeführt wird.

Beispiel

In diesem Beispiel wird die Funktion CreateObject verwendet, um einen Verweis (

xlApp

) in Excel. Sie verwendet den Verweis, um auf die Visible-Eigenschaft von Excel zuzugreifen, und dann wird sie mithilfe der Excel Quit-Methode geschlossen. Schließlich wird der Verweis selbst freigegeben.

Dim xlApp As Object    ' Declare variable to hold the reference.Set xlApp = CreateObject("excel.application")    ' You may have to set Visible property to True    ' if you want to see the application.xlApp.Visible = True    ' Use xlApp to access Microsoft Excel's     ' other objects.xlApp.Quit    ' When you finish, use the Quit method to close Set xlApp = Nothing    ' the application, then release the reference.

Benötigen Sie weitere Hilfe?

Möchten Sie weitere Optionen?

Erkunden Sie die Abonnementvorteile, durchsuchen Sie Trainingskurse, erfahren Sie, wie Sie Ihr Gerät schützen und vieles mehr.

In den Communities können Sie Fragen stellen und beantworten, Feedback geben und von Experten mit umfassendem Wissen hören.