VBA CreateObject (Vytvoriť objekt)

Tento článok vám ukáže, ako používať metódu Create Object vo VBA.

VBA je objektovo orientovaný jazyk - používa postupy na ovládanie a vytváranie objektov.

Vytvoriť objekt

Na vytvorenie objektu v aplikácii Microsoft Office môžeme použiť metódu Create Object. Ak napríklad píšeme kód VBA v programe Excel a chceme otvoriť kópiu programu Word, na vytvorenie novej inštancie programu Word môžeme použiť metódu Vytvoriť objekt.

Napríklad:

12345 Sub CreateWordInstance ()Dim wdApp ako objektNastaviť wdApp = CreateObject ("Word.Application")wdApp.Visible = PravdaKoniec pod

Podobne môžeme vytvoriť novú inštanciu programu PowerPoint alebo Access.

12345 Sub CreatePowerPointApplicationDim ppApp ako objektNastaviť ppApp = CreateObject ("PowerPoint.Application")ppApp.Visible = PravdaKoniec pod

Vytvorený objekt môžeme použiť aj na vytváranie iných predmetov ako aplikačného objektu. Môžeme ho použiť napríklad na vytvorenie listu programu Excel.

1234567 Sub CreateExcelSheet ()Dim xlSheet ako objektNastaviť xlSheet = CreateObject ("Excel.Sheet")xlSheet.Application.Visible = TruexlSheet.Application.Range ("A2") = "Dobré ráno"Nastaviť xlSheet = ničKoniec pod

Tým sa však v skutočnosti vytvorí nová inštancia programu Excel - nevytvorí sa hárok v inštancii, ktorá je už otvorená. Z tohto dôvodu musíme nastaviť Použitie nového hárka (tj: novú inštanciu programu Excel) na Viditeľné, aby sme videli objekt.

Vo všetkých vyššie uvedených príkladoch používame neskorú väzbu - preto premenné deklarujeme ako objekty. Včasnú väzbu môžeme použiť aj tak, že v našom projekte VBA nastavíme odkaz na Word alebo PowerPoint a potom napíšeme čiastkový postup, ako je uvedené nižšie. Kliknite sem, ak sa chcete dozvedieť viac o neskorej a skorej väzbe.

Najprv pre Early Binding, v rámci VBE, sme nastavili odkaz na Microsoft Word.

V Ponuka lišta, vyberte Nástroje> Referencie a posuňte sa nadol, aby ste našli odkaz na Knižnica objektov Microsoft Word 16.0.

Uistite sa, že je začiarknutá referencia, a potom kliknite na OK.

POZNÁMKA: Verzia nemusí byť 16.0, všetko závisí od toho, akú verziu balíka Microsoft Office používate na počítači!

Teraz deklarujeme Objekt pomocou Early Binding - to znamená, že namiesto toho, aby sme wdApp deklarovali ako Objekt, deklarujeme ho ako Slovo. Aplikácia. Zvyšok kódu je rovnaký, ako keď sme vyššie použili neskorú väzbu.

12345 Sub CreateWordInstance ()Dim wdApp ako nové slovo. AplikáciaNastaviť wdApp = CreateObject ("Word.Application")wdApp.Visible = PravdaKoniec pod

Vám pomôže rozvoju miesta, zdieľať stránku s priateľmi

wave wave wave wave wave