Funkcia CreateObject

Poznámka: Radi by sme vám čo najrýchlejšie poskytovali najaktuálnejší obsah Pomocníka vo vašom vlastnom jazyku. Táto stránka bola preložená automaticky a môže obsahovať gramatické chyby alebo nepresnosti. Naším cieľom je, aby bol tento obsah pre vás užitočný. Dali by ste nám v dolnej časti tejto stránky vedieť, či boli pre vás tieto informácie užitočné? Tu nájdete anglický článok pre jednoduchú referenciu.

Poznámka: Funkcia, metóda, objekt alebo vlastnosť, ktoré sú popísané v tejto téme, sú vypnuté, ak je služba Microsoft Jet Expression Service spustená v režime karantény, ktorý zabraňuje vo vyhodnocovaní možných nebezpečných výrazov. Ďalšie informácie o režime karantény nájdete vyhľadaním výrazu „režim karantény“ v Pomocníkovi.

Vytvorenie a vrátenie odkazu na objekt ActiveX.

Syntax

CreateObject ( trieda [, názov servera])

Syntax funkcie CreateObject má tieto argumenty:

Argument

Popis

trieda

Povinný argument. Variant (String). Názov aplikácie a trieda objektu, ktorý chcete vytvoriť.

názov servera

Voliteľný argument. Variant (String). Názov sieťového servera, na ktorom sa objekt vytvorí. Ak je názov servera prázdny reťazec (""), použije sa lokálny počítač.


Argument triedaargument používa syntax argumentu názov aplikácie. Argument typ objektu má tieto časti:

Časť

Popis

názovaplikácie

Povinný argument. Variant (String). Názov aplikácie, ktorá poskytuje objekt.

typ objektu

Povinný argument. Variant (String). Typ alebo trieda objektu, ktorý sa má vytvoriť.


Poznámky

Každá aplikácia podporujúca automatizáciu poskytuje aspoň jeden typ objektu. Aplikácia na spracovanie textu môže napríklad poskytovať objekt Aplikácia, DokumentPanel s nástrojmi.

Ak chcete vytvoriť objekt ActiveX, priraďte objekt vrátený CreateObject k objektová premenná:

Poznámka: Nasledujúce príklady ukazujú použitie tejto funkcie v module jazyka Visual Basic for Applications (VBA). Ak chcete získať ďalšie informácie o práci s jazykom VBA, vyberte z rozbaľovacieho zoznamu vedľa položky Hľadať možnosť Odkaz pre vývojára a do vyhľadávacieho poľa zadajte nejaké výrazy.

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

V tomto príklade budeme automatizovať excelový tabuľkový hárok v rámci Accessovej databázy. Tento kód spustí aplikáciu, v ktorej sa vytvorí objekt, v tomto prípade tabuľkový hárok programu Microsoft Excel. Po vytvorení objektu naň odkazujete v kóde pomocou objektovej premennej, ktorú ste definovali. V nasledujúcom príklade pristupujete k vlastnostiam a metódam nového objektu pomocou objektovej premennej, ExcelSheet a iných objektov programu Excel vrátane objektu Application (Aplikácia) a kolekcie Cells (Bunky).

' 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

Deklarovanie premennej objektu pomocou klauzuly As Object vytvorí premennú, ktorá môže obsahovať odkaz na akýkoľvek typ objektu. Prístup k objektu prostredníctvom tejto premennej je však oneskorený; to znamená, že väzba sa vyskytuje pri spustení programu. Ak chcete vytvoriť premennú objektu, ktorá má za následok skorú väzbu, ktorá je záväzná pri zostavovaní programu, deklarovať premennú objektu s konkrétnou IDENTIFIKÁCIou triedy. Môžete napríklad deklarovať a vytvoriť nasledujúce odkazy v Exceli:

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)

Odkazovanie prostredníctvom premennej s včasnou väzbou môže zvýšiť výkon, môže však obsahovať len odkaz na triedu, ktorá je určená v deklarácii.

Objekt, ktorý vrátila funkcia CreateObject, môžete poskytnúť funkcii, ktorá objekt očakáva ako argument. Nasledujúci kód napríklad vytvorí a poskytne odkaz na objekt Excel.Application:

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

Objekt môžete vytvoriť na vzdialenom zosieťovanom počítači tým, že názov počítača poskytnete v argumente názov servera funkcie CreateObject. Tento názov je rovnaký ako časť Názov počítača v spoločnom názve: názov servera pre zdieľanie s názvom„\\Môj server\Verejné“, je „Môj server“.

Poznámka:  Ďalšie informácie o aktivácii zobrazenia aplikácie na vzdialenom zosieťovanom počítači nájdete v dokumentácii COM (pozri Microsoft Developer Network). Možno budete musieť pridať kľúč databázy Registry pre vašu aplikáciu.

Nasledujúci kód vráti číslo verzie inštancie programu Excel, ktorý je spustený vo vzdialenom počítači s názvom MyServer:

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

Ak vzdialený server neexistuje alebo nie je k dispozícii, počas spúšťania sa vyskytne chyba.

Poznámka:  Ak aktuálna inštancia objektu nie je k dispozícii, použitie funkciu CreateObject. Ak inštancia objektu už je spustená, spustí sa nová inštancia a vytvorí sa objekt zadaného typu. Ak chcete použiť aktuálnu inštanciu alebo spustiť aplikáciu, ktorá má načítať súbor, použite funkciu GetObject.

Ak sa objekt zaregistroval ako objekt jednej inštancie, vytvorí sa iba jedna inštancia objektu bez ohľadu na to, koľkokrát sa funkcia CreateObject spustí.

Príklad

V tomto príklade je funkcia CreateObject použitá na nastavenie odkazu (

xlApp

) na Excel. Funkcia použije odkaz na prístup k vlastnosti Viditeľné programu Excel a potom použije metódu Ukončiť na zatvorenie. Nakoniec sa uvoľní samotný odkaz.

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.
Rozšírte svoje zručnosti práce s balíkom Office
Preskúmať školenie
Buďte medzi prvými, ktorí získajú nové funkcie
Pridajte sa k insiderom pre Office

Boli tieto informácie užitočné?

Ďakujeme za vaše pripomienky!

Ďakujeme vám za pripomienky. Pravdepodobne vám pomôže, ak vás spojíme s pracovníkom podpory pre Office.

×