CreateObject vo VBA - Ako používať funkciu CreateObject vo VBA?

Funkcia CreateObject vo VBA

Objekty sú veľmi dôležité pojmy v kódovaní VBA a pochopenie, že pracovný model objektu je pomerne zložitý. Keď odkazujeme na objekty v kódovaní VBA, robíme to dvoma spôsobmi, tj „Včasná väzba“ a „Neskorá väzba“. „Včasná väzba“ je proces nastavovania referencie na objekt z knižnice referencií VBA, a keď súbor pošleme niekomu inému, vyžaduje tiež nastavenie odkazu na tieto príslušné objekty. „Neskorá väzba“ však nevyžaduje, aby používateľ nastavoval akékoľvek odkazy na objekty, pretože pri kódovaní neskorej väzby sme pomocou funkcie VBA „CreateObject“ nastavili odkaz na príslušný objekt.

Čo je CreateObject v programe Excel VBA?

„Create Object“, ako už samotný názov hovorí, vytvorí uvedený objekt z aplikácie Excel VBA. Funkcia Create Object teda vracia odkaz na objekt iniciovaný komponentom Active X.

Nižšie je uvedená syntax funkcie CreateObject vo VBA

  • Trieda: Názov objektu, ktorý sa pokúšame iniciovať a nastaviť odkaz na premennú.
  • (Názov servera): Toto je voliteľný parameter; ak sa ignoruje, použije iba lokálny počítač.

Príklad funkcie vytvorenia objektu v programe Excel VBA

Ďalej uvádzame príklady VBA CreateObject.

Príklad č

Teraz uvidíme, ako spustiť aplikáciu PowerPoint z Excelu pomocou funkcie CreateObject vo VBA. Otvorte súbor programu Excel a prejdite do okna editora jazyka Visual Basic stlačením klávesu ALT + F11 .

Kód:

Sub CreateObject_Example1 () End Sub

Deklarujte premennú ako PowerPoint.Application.

Ako vidíte vyššie, keď začneme písať slovo „PowerPoint“, nezobrazí sa nám žiadny zoznam technológie IntelliSense, ktorý by zobrazoval súvisiace vyhľadávania. Je to tak preto, že „PowerPoint“ je externý objekt. Ale netreba sa báť deklarovať premennú ako „Objekt“.

Kód:

Sub CreateObject_Example1 () Dim PPT ako koniec objektu Sub

Pretože sme premennú deklarovali ako „Objekt“, musíme nastaviť odkaz na objekt pomocou kľúčového slova „Nastaviť“. Zadaním kľúčového slova „Nastaviť“ uveďte premennú a vložte rovnaké znamienko.

Kód:

Sub CreateObject_Example1 () Dim PPT ako sada objektov PPT = End Sub

Teraz otvorte funkciu CreateObject.

Pretože na parameter „Class“ funkcie Create Object odkazujeme na externý objekt aplikácie „PowerPoint“ , uveďte názov externého objektu v dvojitých úvodzovkách ako „PowerPoint.Application“.

Kód:

Sub CreateObject_Example1 () Dim PPT as Object Set PPT = CreateObject ("PowerPoint.Application") End Sub

Teraz funkcia Vytvoriť objekt spustí aplikáciu PowerPoint. Po spustení objektu ho musíme zviditeľniť pomocou názvu premennej.

Jedným z problémov s metódou Create Object alebo metódou neskorej väzby je, že v danom okamihu nevidíme zoznam IntelliSense. Musíte byť úplne istí kódom, ktorý píšete.

Pre premennú „PPT“ použite vlastnosť „Viditeľné“ a stav nastavte na „True“.

Kód:

Sub CreateObject_Example1() Dim PPT As Object Set PPT = CreateObject("PowerPoint.Application") PPT.Visible = True End Sub

To add a slide to PPT, define the below line VBA code.

Code:

Sub CreateObject_Example1() Dim PPT As Object Set PPT = CreateObject("PowerPoint.Application") PPT.Visible = True PPT.Presentations.Add End Sub

Now execute the code manually or through the F5 key and see the “PowerPoint” application opens up.

Once the PowerPoint application is enabled using the variable “PPT,” we can start accessing the PowerPoint application.

Example #2

Now we will see how to initiate an Excel application using the CreateObject function in VBA. Once again, declare the variable as “Object.”

Code:

Sub CreateObject_Example2() Dim ExcelSheet As Object End Sub

The moment we declare the variable as an object, it causes late binding, and we need to use the “Set” keyword to set the reference for the required object.

Since we are referencing to excel worksheet from the application excel, enter “Excel. Sheet” in double-quotes.

Code:

Sub CreateObject_Example2() Dim ExcelSheet As Object Set ExcelSheet = CreateObject("Excel.Sheet") End Sub

Once the reference for the excel sheet is set, we need to make it visible to use it. This is similar to how we made the PowerPoint application visible.

Code:

Sub CreateObject_Example2() Dim ExcelSheet As Object Set ExcelSheet = CreateObject("Excel.Sheet") ExcelSheet.Application.Visible = True End Sub

Now it will activate the excel worksheet.

Similarly, to initiate an excel workbook from other Microsoft products, we can use the below code.

Code:

Sub CreateObject_Example3 () Dim ExlWb ako sada objektov ExlWb = CreateObject ("Excel.Application") ExlWb.Application.Visible = True End Sub

Na čo by ste si mali pamätať Informácie o CreateObject vo VBA

  • Vo VBA sa na odkazovanie na objekty používa funkcia CreateObject.
  • Funkcia Create Object spôsobí proces neskorej väzby.
  • Pomocou funkcie create object sa nedostaneme k prístupu k zoznamu IntelliSense VBA.

Zaujímavé články...