Funkcija CreateObject

Opomba : V tej temi opisana funkcija, metoda, predmet ali lastnost, je onemogočena, če se izvaja storitev Microsoft Jet Expression Service v načinu peskovnika, ki preprečuje vrednotenje morebitno nevarnih izrazov. Za več informacij o načinu peskovnika poiščite »način peskovnika« v pomoči.

Ustvari in vrne sklic na predmet ActiveX.

Sintaksa

CreateObject ( razred [, ime strežnika] )

Sintaksa funkcije CreateObject ima te argumente:

Argument

Opis

razred

Obvezno. Variant (niz). Ime programa in razred predmeta, ki ga želite ustvariti.

ime strežnika

Izbirno. Variant (niz). Ime v omrežnem strežniku, kjer bo ustvarjen predmet. Če je ime strežnika prazno, niz (""), se uporablja lokalni računalnik.


Razred argument uporablja sintakso ime programa. Vrsta predmeta je sestavljena iz teh delov:

Del

Opis

ime programa

Obvezno. Variant (niz). Ime programa, ki posreduje predmet.

vrsta predmeta

Obvezno. Variant (niz). Vrsta ali razred predmeta, ki ga želite ustvariti.


Opombe

Vsak program, ki podpira avtomatizacijo, zagotavlja vsaj eno vrsto predmeta. Na primer, program za urejanje besedil lahko posreduje predmete program, dokument in orodno vrstico.

Če želite ustvariti predmet ActiveX, dodelite predmet, ki ga vrne funkcija CreateObject spremenljivki predmeta:

Opomba : V spodnjih primerih je prikazana uporaba te funkcije v modulu Visual Basic for Applications (VBA). Če želite več informacij o delu z modulom VBA, izberite Vsebina za razvijalce na spustnem seznamu ob možnosti Iskanje in v iskalno polje vnesite enega ali več izrazov.

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

Ta koda zažene program, ki ustvari predmet, v tem primeru preglednico Microsoft Office Excel 2007. Ko je predmet ustvarjen, se sklicujete nanj v kodi z uporabo spremenljivke predmeta, ki ste jo določili. V tem primeru dostopate do lastnosti in metod novega predmeta s spremenljivko predmeta, ExcelSheet, in drugih Excelovih predmetov, vključno s predmetom Application in z zbirko Cells.

' 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

Z deklariranjem spremenljivke predmeta s stavkom As Object se ustvari spremenljivka, ki lahko vsebuje sklic na katero koli vrsto predmeta. Vendar pa je dostop do predmeta prek te spremenljivke pozno vezan; do vezave pride, ko se zažene program. Če želite ustvariti spremenljivko predmeta, ki se odrazi v zgodnji vezavi, torej vezavi, ko je program preveden, deklarirajte spremenljivko predmeta z določenim ID-jem razreda. Na primer, deklarirate in ustvarite lahko te Excelove sklice:

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)

Sklic prek zgodaj vezane spremenljivke lahko omogoči boljšo učinkovitost delovanja, vendar pa lahko vsebuje samo sklic na razred, določen v deklaraciji.

Predmet, ki ga vrne funkcija CreateObject lahko podate funkciji, ki pričakuje predmet kot argument. Na primer, spodnja koda ustvari in poda sklic na predmet Excel.Application:

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

Ustvarite lahko predmet v oddaljenem omreženem računalniku, tako da v argument ime strežnika funkcije CreateObject podate ime računalnika. To je isto ime kot je del imena računalnika za skupno rabo: če je ime za skupno rabo »\\MyServer\Public«, je argument ime strežnika »MyServer«.

Opomba :  Za dodatne informacije o tem, kako prikažete program v oddaljenem omreženem računalniku glejte dokumentacijo COM (glejte Microsoft Developer Network). Morda boste morali dodati registrski ključ za program.

Spodnja koda vrne številko različice primerka Excela, ki se izvaja v oddaljenem računalniku z imenom MyServer:

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

Če oddaljeni strežnik ne obstaja ali pa ni na voljo, pride do napake med izvajanjem.

Opomba :  Funkcijo CreateObject uporabite, kadar ni na voljo noben trenutni primerek predmeta. Če se primerek predmeta že izvaja, se zažene nov primerek in ustvari se predmet določene vrste. Če želite uporabiti trenutni primerek ali zagnati program, v katerem se naloži datoteka, uporabite funkcijo GetObject.

Če se je predmet registriral kot enkratni primerek predmeta, se ustvari samo en primerek predmeta, ne glede na to, kolikokrat se izvede funkcija CreateObject.

Primer

V tem primeru je uporabljena funkcija CreateObject za nastavitev sklica (

xlApp

) na Excel. Ta uporabi sklic za dostop do lastnosti Visible programa Excel, nato pa uporabi Excelovo metodo Quit, da ga zapre. Na koncu se izda sam sklic.

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.
Razširite svoja znanja
Oglejte si izobraževanje
Prvi dobite nove funkcije
Pridružite se programu Office Insider

Vam je bila informacija v pomoč?

Zahvaljujemo se vam za povratne informacije.

Zahvaljujemo se vam za povratne informacije. Videti je, da bi vam prišla prav pomoč enega od naših Officeovih agentov za podporo.

×