VBA CreateObject (Izradi objekt)

Sadržaj

Ovaj članak će vam pokazati kako koristiti metodu Stvaranje objekta u VBA -i.

VBA je objektno orijentirani jezik - koristi procedure za kontrolu i stvaranje objekata.

Izradi objekt

Pomoću metode Create Object možemo stvoriti Object u aplikaciji Microsoft Office. Na primjer, ako pišemo VBA kôd u Excelu i želimo otvoriti kopiju Worda, možemo upotrijebiti metodu Stvaranje objekta za stvaranje nove instance Worda.

Na primjer:

12345 Sub CreateWordInstance ()Zatamnite wdApp kao objektPostavi wdApp = CreateObject ("Word.Application")wdApp.Visible = IstinaKraj podm

Slično tome, možemo stvoriti novu instancu programa PowerPoint ili Access.

12345 Sub CreatePowerPointApplicationZatamni ppApp kao objektPostavi ppApp = CreateObject ("PowerPoint.Application")ppApp.Visible = IstinaKraj podm

Također možemo upotrijebiti Create Object za stvaranje drugih objekata osim Application Objekta. Možemo ga koristiti za izradu Excel lista, na primjer.

1234567 Pod CreateExcelSheet ()Zatamni xlSheet kao objektPostavi xlSheet = CreateObject ("Excel.Sheet")xlSheet.Application.Visible = IstinaxlSheet.Application.Range ("A2") = "Dobro jutro"Postavi xlSheet = NištaKraj podm

Međutim, ovo zapravo stvara novu instancu programa Excel - ne stvara list u instanci koja je već otvorena. Iz tog razloga moramo postaviti Primjena novog lista (tj. Novu instancu Excela) na Vidljivo kako bismo vidjeli objekt.

U svim gornjim primjerima koristimo Late Binding - stoga deklariramo varijable kao Objekte. Također možemo koristiti Early Binding postavljanjem referencije na Word ili PowerPoint u našem VBA projektu i zatim pisanjem podprocedure kao što je prikazano u nastavku. Za više informacija o kasnom i ranom vezivanju kliknite ovdje.

Prvo za Early Binding, unutar VBE -a, postavili smo referencu na Microsoft Word.

U Jelovnik traka, odaberite Alati> Reference i pomaknite se prema dolje kako biste pronašli referencu na Biblioteka objekata Microsoft Word 16.0.

Provjerite je li označena referenca, a zatim kliknite U REDU.

NAPOMENA: verzija možda nije 16.0, sve ovisi o verziji sustava Microsoft Office koju koristite na svom računalu!

Sada deklariramo Objekt ranim vezanjem - to znači da, umjesto da wdApp proglasimo Objektom, deklariramo ga kao Word.Primjena. Ostatak koda je isti kao i kada smo gore koristili Late Binding.

12345 Sub CreateWordInstance ()Zatamnite wdApp kao novu Word.ApplicationPostavi wdApp = CreateObject ("Word.Application")wdApp.Visible = IstinaKraj podm

Vi ćete pomoći u razvoju web stranice, dijeljenje stranicu sa svojim prijateljima

wave wave wave wave wave