„CreateObject“ funkcija VBA
Objektai yra labai svarbios VBA kodavimo sąvokos ir supratimas, kad objekto darbo modelis yra gana sudėtingas. Kai mes nurodome objektus VBA kodavime, tai darome dviem būdais, ty „Ankstyvasis įrišimas“ ir „Vėlyvasis įrišimas“. „Ankstyvasis susiejimas“ yra objekto nuorodos nustatymas iš VBA nuorodų bibliotekos. Kai failą siunčiame kam nors kitam, jie taip pat reikalauja nustatyti nuorodą į tuos atitinkamus objektus. Tačiau „Vėlyvas įrišimas“ nereikalauja, kad vartotojas nustatytų jokių objekto nuorodų, nes vėluodami įrišdami kodavimą, mes nustatome nuorodą į atitinkamą objektą naudodami funkciją VBA „CreateObject“.
Kas yra „Excel VBA“ „CreateObject“?
„Kurti objektą“, kaip sako pats pavadinimas, sukurs minėtą objektą iš „Excel VBA“. Taigi, funkcija „Kurti objektą“ grąžina nuorodą į objektą, kurį inicijuoja „Active X“ komponentas.
Žemiau yra VBA funkcijos „CreateObject“ sintaksė
- Klasė: objekto, kurį bandome inicijuoti, pavadinimas ir nustatoma nuoroda į kintamąjį.
- (Serverio pavadinimas): tai pasirenkamas parametras; jei jo nepaisys, jis naudos tik vietinę mašiną.
„Excel VBA“ objekto funkcijos sukūrimo pavyzdys
Žemiau pateikiami VBA CreateObject pavyzdžiai.
1 pavyzdys
Dabar pamatysime, kaip inicijuoti „PowerPoint“ programą iš „Excel“, naudojant VBA funkciją „CreateObject“. Atidarykite „Excel“ failą ir eikite į „Visual Basic Editor“ langą paspausdami klavišą ALT + F11 .
Kodas:
Sub CreateObject_Example1 () Pabaiga Sub
Paskelbkite kintamąjį kaip „PowerPoint“. Taikymas.
Kaip matote aukščiau, kai pradedame rašyti žodį „PowerPoint“, nematome jokio „IntelliSense“ sąrašo, kuriame būtų rodomos susijusios paieškos. Taip yra todėl, kad „PowerPoint“ yra išorinis objektas. Bet nieko nerimauti skelbkite, kad kintamasis yra „Object“.
Kodas:
Sub CreateObject_Example1 () Dim PPT kaip Object End Sub
Kadangi kintamąjį paskelbėme kaip „Object“, turime nustatyti objekto nuorodą naudodami raktinį žodį „Set“. Įvesdami raktinį žodį „Nustatyti“, paminėkite kintamąjį ir padėkite lygybės ženklą.
Kodas:
Sub CreateObject_Example1 () Dim PPT kaip objektų rinkinys PPT = End Sub
Dabar atidarykite „CreateObject“ funkciją.
Kadangi funkcijos „Kurti objektą “ parametro „Klasė“ nurodome išorinį „PowerPoint“ objektą, paminėkite išorinio objekto pavadinimą dvigubose kabutėse kaip „PowerPoint.Application“.
Kodas:
Sub CreateObject_Example1 () Dim PPT kaip objektų rinkinys PPT = CreateObject ("PowerPoint.Application") Pabaiga Sub
Dabar funkcija „Sukurti objektą“ inicijuos „PowerPoint“ programą. Kai objektas yra inicijuojamas, turime padaryti jį matomą naudodami kintamojo pavadinimą.
Viena iš „Object Create“ arba vėlyvo susiejimo metodo problemų yra ta, kad mes nematome „IntelliSense“ sąrašo tam tikru momentu. Turite būti visiškai tikri dėl kodo, kurį rašote.
Kintamajam „PPT“ naudokite ypatybę „Visible“ ir nustatykite būseną kaip „True“.
Kodas:
Sub CreateObject_Example1 () Dim PPT kaip objektų rinkinys PPT = CreateObject ("PowerPoint.Application") PPT.Visible = True End Sub
Norėdami pridėti skaidrę prie PPT, apibrėžkite žemiau esančią VBA kodo eilutę.
Kodas:
Sub CreateObject_Example1 () Dim PPT kaip objektų rinkinys PPT = CreateObject ("PowerPoint.Application") PPT.Visible = True PPT.Presentations.Add End Sub
Dabar vykdykite kodą rankiniu būdu arba naudodami klavišą F5 ir pamatykite, kad atsidaro programa „PowerPoint“.
Įgalinę „PowerPoint“ programą naudodami kintamąjį „PPT“, galime pradėti naudotis „PowerPoint“ programa.
2 pavyzdys
Dabar pamatysime, kaip inicijuoti „Excel“ programą naudojant VBA „CreateObject“ funkciją. Dar kartą paskelbkite, kad kintamasis yra „Objektas“.
Kodas:
Sub CreateObject_Example2 () pritemdyti „ExcelSheet“ kaip objekto pabaigos antrinę dalį
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 kaip objektų rinkinys ExlWb = CreateObject ("Excel.Application") ExlWb.Application.Visible = True End Sub
Įsimintini dalykai apie „CreateObject“ VBA
- VBA funkcija „CreateObject“ naudojama objektams nurodyti.
- Funkcija „Sukurti objektą“ sukelia vėlavimo įrišimo procesą.
- Naudodami objekto sukūrimo funkciją, mes negalime pasiekti VBA „IntelliSense“ sąrašo.