CreateObject-Funktion

Wichtig :  Dieser Artikel wurde maschinell übersetzt. Bitte beachten Sie den Haftungsausschluss. Die englische Version des Artikels ist als Referenz hier verfügbar: hier.

Hinweis : Die Funktion, die Methode, das Objekt oder die Eigenschaft, die bzw. das in diesem Thema erläutert wird, ist deaktiviert, falls der Ausdrucksdienst in Microsoft Jet im geschützten Modus (Sandbox Mode) ausgeführt wird. In diesem Modus wird die Auswertung von potenziell unsicheren Ausdrücken verhindert. Weitere Informationen zum geschützten Modus erhalten Sie, wenn Sie in der Hilfe nach "sandbox mode" suchen.

Erstellt und gibt einen Bezug auf ein ActiveX-Objekt zurück.

Syntax

CreateObject ( Klasse [, Servername] )

Die Syntax der CreateObject-Funktion besteht aus den folgenden Argumenten:

Argument

Beschreibung

class

Erforderlich. Variant (String). Der Anwendungsname 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 Argumentclass verwendet die Syntax appname.objecttype und besteht aus den folgenden Teilen:

Teil

Beschreibung

appname

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

objecttype

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


Hinweise

Jede Anwendung mit Automatisierungsunterstützung stellt mindestens einen Objekttyp bereit. Eine Textverarbeitungsanwendung kann beispielsweise ein Application-Objekt, ein Document-Objekt und ein Toolbar-Objekt bereitstellen.

Weisen Sie das von CreateObject zurückgegebene Objekt einer Objektvariable zu, um ein ActiveX-Objekt zu erstellen:

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 Object
Set ExcelSheet = CreateObject("Excel.Sheet")

Dieser Code beginnt die Anwendung das Objekt, in diesem Fall Erstellen einer Kalkulationstabelle Microsoft Office Excel 2007. Nachdem ein Objekt erstellt wurde, verweisen Sie darauf über die von Ihnen definierten Objektvariable Code ein. Im folgenden Beispiel greifen Sie auf Eigenschaften und Methoden des neuen Objekts mit der Objektvariable, ExcelSheetund andere Excel-Objekte, einschließlich des Objekts Application und der Cells Auflistung.

' 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 die Deklaration einer Objektvariablen mit der As Object-Klausel wird eine Variable erstellt, die einen Verweis auf jede Art von Objekttyp enthalten kann. Der Zugriff auf das Objekt über diese Variable ist jedoch dynamisch gebunden, d. h., die Bindung tritt beim Ausführen des Programms auf. Deklarieren Sie die Objektvariable mit einer speziellen Klassen-ID, um eine Objektvariable zu erstellen, die zu einer frühen Bindung führt, also zu einer Bindung beim Kompilieren des Programms. Sie können beispielsweise die folgenden Excel-Verweise deklarieren und erstellen:

Dim xlApp As Excel.Application 
Dim xlBook As Excel.Workbook
Dim xlSheet As Excel.WorkSheet
Set xlApp = CreateObject("Excel.Application")
Set xlBook = xlApp.Workbooks.Add
Set xlSheet = xlBook.Worksheets(1)

Der Verweis über eine früh gebundene Variable kann zu einer Leistungsverbesserung führen. Er kann jedoch nur einen Verweis auf die in der Deklaration angegebenen Klasse enthalten.

Sie können ein Objekt übergeben, das von der CreateObject-Funktion an eine Funktion zurückgegeben wird, die ein Objekt als Argument erwartet. Beispielsweise wird durch den folgenden Code ein Verweis auf ein Excel.Application-Objekt erstellt und übergeben:

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

Sie können auf einem Computer mit Remotenetzwerkverbindung ein Objekt erstellen, indem Sie den Namen des Computers an das Argument servername von CreateObject übergeben. Dieser Name ist mit dem Teil Computername eines Freigabenamens identisch: Bei einer Freigabe mit dem Namen \\MyServer\Public hat servername den Wert MyServer.

Hinweis : Weitere Informationen dazu, wie Sie eine Anwendung auf einem Computer mit Remotenetzwerkverbindung sichtbar machen, finden Sie in der COM-Dokumentation (unter Microsoft Developer Network). Sie müssen möglicherweise einen Registrierungsschlüssel für die Anwendung hinzufügen.

Durch den folgenden Code wird die Versionsnummer einer Excel-Instanz wiedergegeben, die auf einem Remotecomputer mit dem Namen MyServer ausgeführt wird:

Dim xlApp As Object
Set 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 vorhanden ist. Wenn bereits eine Instanz des Objekts ausgeführt wird, wird eine neue Instanz gestartet, und es wird ein Objekt des angegebenen Typs erstellt. Verwenden Sie die GetObject-Funktion, damit die aktuelle Instanz verwendet wird oder damit die Anwendung gestartet und eine Datei geladen wird.

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

Beispiel

Dieses Beispiel verwendet die CreateObject-Funktion, um einen Verweis (

xlApp

) auf Excel festzulegen. Der Verweis wird für den Zugriff auf die Visible-Eigenschaft von Excel verwendet. Anschließend wird die Eigenschaft mithilfe der Quit-Methode von Excel geschlossen. Schließlich wird der Verweis 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.

Hinweis : Haftungsausschluss für maschinelle Übersetzungen: Dieser Artikel wurde mithilfe eines Computersystems und ohne jegliche Bearbeitung durch Personen übersetzt. Microsoft bietet solche maschinellen Übersetzungen als Hilfestellung für Benutzer ohne Englischkenntnisse an, damit Sie von den Informationen zu Produkten, Diensten und Technologien von Microsoft profitieren können. Da es sich bei diesem Artikel um eine maschinelle Übersetzung handelt, enthält er möglicherweise Fehler in Bezug auf (Fach-)Terminologie, Syntax und/oder Grammatik.

Teilen Facebook Facebook Twitter Twitter E-Mail E-Mail

War diese Information hilfreich?

Sehr gut. Noch anderes Feedback?

Was können wir verbessern?

Vielen Dank für Ihr Feedback!

×