CreateObject függvény

Fontos : Ez a cikk gépi fordítással lett lefordítva, lásd a jognyilatkozatot. A cikk angol változatát itt találhatja meg.

Megjegyzés : A témakörben ismertetett függvény, metódus, objektum vagy tulajdonság le van tiltva, ha a Microsoft Jet Expression Service védőfalas üzemmódban fut, mivel ez megakadályozza az esetleg nem biztonságos kifejezések kiszűrését. A védőfalas üzemmódról a súgóban a „védőfalas üzemmód” kifejezésre keresve talál további információt.

ActiveX-objektumra mutató hivatkozást hoz létre és ad eredményül.

Szintaxis

CreateObject ( osztály [, kiszolgálónév] )

A CreateObject függvény argumentumai a következők:

Argumentum

Leírás

osztály

Kötelező megadni. Variáns (Karakterlánc). A létrehozandó objektum alkalmazásneve és osztálya.

kiszolgálónév

Nem kötelező. Variáns (Karakterlánc). Annak a hálózati kiszolgálónak a neve, ahol létre szeretné hozni az objektumot. Ha a kiszolgálónév egy nulla hosszúságú karakterlánc (""), akkor a helyi számítógépet használja a program.


Az osztályargumentum az appnév.objektumtípus szintaxist használják, és az alábbi részekből állnak:

Rész

Leírás

appnév

Kötelező megadni. Variáns (Karakterlánc). Az objektumot megadó alkalmazás neve.

objektumtípus

Kötelező megadni. Variáns (Karakterlánc). A létrehozandó objektum típusa vagy osztálya.


Megjegyzések

Minden automatizmust támogató alkalmazás szolgáltat legalább egy objektumtípust. Egy szövegszerkesztő alkalmazás például szolgáltathat Alkalmazás, Dokumentum és Eszköztár objektumot.

Ha létre szeretne hozni egy ActiveX-objektumot, a CreateObject által eredményül adott objektumot rendelje hozzá egy objektumváltozóhoz:

Megjegyzés : A következő példák egy Visual Basic for Applications (VBA) modulban mutatják be a függvény használatát. A VBA használatáról a Keresés elem mellett található legördülő listából a fejlesztői forrásokat választva, majd egy vagy több keresőszót megadva kaphat további tájékoztatást.

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

A kód elindítja az objektumot létrehozó alkalmazást, ebben az esetben egy Microsoft Office Excel 2007-számolótáblát. Miután létrehozott egy objektumot, az Ön által megadott objektumváltozó használatával hivatkozik rá a kódban. Az alábbi példában az új objektum tulajdonságaihoz és metódusaihoz az ExcelSheet-objektumváltozóval lehet hozzáférni, csakúgy, mint más Excel-objektumokhoz, többek közt az Application-objektumhoz és a Cells-gyűjteményhez.

' 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

Amikor az As Object-záradékkel deklarál egy objektumváltozót, létrejön egy változó, amely bármilyen típusú objektumra mutató hivatkozást tartalmazhat. Az objektumnak ezzel a változóval történő elérése azonban késői kötésű, vagyis a kötés a program futásakor jön létre. Ha olyan objektumváltozót szeretne létrehozni, amely korai kötést eredményez, tehát a program összeállításakor történő kötést, akkor deklarálja az objektumváltozót egy egyedi osztályazonosítóval. Deklarálhatók és létrehozhatók például az alábbi Excel-hivatkozások:

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)

A korai kötésű változóval történő hivatkozás jobb teljesítményt eredményezhet, de csak a deklarációban megadott osztályra mutató hivatkozást tartalmazhat.

A CreateObject függvény által eredményül adott objektumot át lehet adni olyan függvénynek, amelynek argumentumként objektumot kell megadni. A következő kód például létrehoz egy hivatkozást, és átadja egy Excel.Application-objektumnak:

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

Távoli hálózati számítógépen is létre lehet hozni objektumot a számítógép nevének a CreateObject függvény kiszolgálónév argumentumának való átadásával. A név megegyezik egy megosztott név gépnév részével – ha például a megosztott név „\\kiszolgáló\nyilvános”, akkor a kiszolgálónév „kiszolgáló”.

Megjegyzés :  További információt arról, hogyan lehet alkalmazásokat láthatóvá tenni távoli hálózati számítógépeken a COM-dokumentációban (lásd a Microsoft Developer Network hálózatot) talál. Elképzelhető, hogy létre kell hozni egy beállításkulcsot az alkalmazásnak.

Az alábbi kód egy MyServer nevű távoli számítógépen futó Excel-példány verziószámát adja vissza:

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

Ha a távoli kiszolgáló nem létezik vagy nem érhető el, futási idejű hiba lép fel.

Megjegyzés :  Ha az objektumnak nincs aktuális példánya, akkor használja a CreateObject függvényt. Ha az objektumnak már fut egy példánya, elindul egy új példány, és létrejön egy megadott típusú objektum. Ha az aktuális példányt szeretné használni, vagy el szeretné indítani az alkalmazást, hogy betöltsön egy fájlt, használja a GetObject függvényt.

Ha egy objektum egypéldányos objektumként regisztrálta be magát, csak egyetlen példány jön létre az objektumból, függetlenül attól, hogy a CreateObject hányszor lett végrehajtva.

Példa

Az alábbi példában a CreateObject függvény létrehoz egy hivatkozást (

xlApp

), amely az Excelre mutat. Ezután a hivatkozás segítségével hozzáférhet az Excel Látható tulajdonságához, majd az Excel Kilépés metódusával bezárhatja. Végül a hivatkozás is ki lesz engedve.

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.

Megjegyzés : Gépi fordítás jognyilatkozata: Ez a cikk számítógép által, emberi közreműködés nélkül lett lefordítva. A Microsoft ezeket a gépi fordításokat azért nyújtja, hogy az angol nyelvet nem beszélők minél több tartalomhoz tudjanak hozzáférni a Microsoft termékeivel, szolgáltatásaival és technológiáival kapcsolatban. A gépi fordítás miatt előfordulhat, hogy a szöveg szóhasználati, szintaktikai vagy helyesírási hibákat tartalmaz.

Ismeretek bővítése
Oktatóanyagok megismerése
Új szolgáltatások listájának lekérése
Részvétel az Office Insider programban

Hasznos volt az információ?

Köszönjük a visszajelzését!

Köszönjük visszajelzését. Jobbnak látjuk, ha az Office egyik támogatási szakemberéhez irányítjuk.

×