LumikhaObject sa VBA | Paano gamitin ang UseObject Function sa VBA?

Lumikha ngObject Function sa VBA

Napakahalagang konsepto ng mga object sa pag-coding ng VBA at pag-unawa na ang modelo ng trabaho ng isang bagay ay medyo kumplikado. Kapag tinukoy namin ang mga bagay sa pag-coding ng VBA ginagawa namin ito sa dalawang paraan ibig sabihin ay "Maagang Binding" at "Late Binding". Ang "Maagang Binding" ay ang proseso ng pagtatakda ng sanggunian ng object mula sa sanggunian ng aklatan ng VBA at kapag ipinadala namin ang file sa ibang tao kinakailangan din nilang itakda ang sanggunian sa mga kaukulang bagay. Gayunpaman, hindi hinihiling ng "Late Binding" ang gumagamit na magtakda ng anumang mga sanggunian ng object dahil sa huli na umiikot na coding itinakda namin ang sanggunian sa kani-kanilang bagay sa pamamagitan ng paggamit ng function na VBA na "CreateObject".

Ano ang CreateObject sa Excel VBA?

"Lumikha ng Bagay" tulad ng mismong pangalan na nagsasabing lilikha ito ng nabanggit na bagay mula sa Excel VBA. Kaya, ang function na Lumikha ng Bagay ay nagbabalik ng sanggunian sa isang bagay na pinasimulan ng isang aktibong X sangkap.

Nasa ibaba ang syntax ng pag-andar ng CreateObject sa VBA

  • Klase: Ang pangalan ng bagay na sinusubukan naming simulan at itakda ang sanggunian sa variable.
  • [Pangalan ng server]: Ito ay isang opsyonal na parameter, kung hindi papansinin ay gagamitin lamang nito ang lokal na makina.

Halimbawa ng Lumikha ng Pag-andar ng Bagay sa Excel VBA

Nasa ibaba ang mga halimbawa ng VBA CreateObject.

Maaari mong i-download ang Template ng VBA CreateObject Excel dito - VBA CreateObject Excel Template

Halimbawa # 1

Ngayon makikita natin kung paano sisimulan ang aplikasyon ng PowerPoint mula sa excel gamit ang function na CreateObject sa VBA. Buksan ang excel file at pumunta sa Window ng Visual Basic Editor sa pamamagitan ng pagpindot sa ALT + F11 susi

Code:

 Sub LumikhaObject_Example1 () Tapusin ang Sub 

Ideklara ang variable bilang PowerPoint.Application.

Tulad ng nakikita mo sa itaas kapag nagsimula kaming mag-type ng salitang "PowerPoint" wala kaming nakitang anumang listahan ng talino na nagpapakita ng mga kaugnay na paghahanap dahil ito sa "PowerPoint" ay isang panlabas na bagay. Ngunit walang dapat magalala ang ideklara ang variable bilang "Bagay".

Code:

 Sub LumikhaObject_Example1 () Madilim ang PPT Bilang Wakas na Nagtatapos ng Bagay 

Dahil idineklara namin ang variable bilang "Bagay" kailangan naming itakda ang sanggunian sa object sa pamamagitan ng paggamit ng keyword na "Itakda". Sa pamamagitan ng pagpasok ng "Itakda" keyword banggitin ang variable at maglagay ng pantay na pag-sign.

Code:

 Sub LumikhaObject_Example1 () Madilim ang PPT Bilang Itinakda ng Bagay na PPT = End Sub 

Ngayon buksan ang pag-andar ng CreateObject.

Dahil tinutukoy namin ang panlabas na bagay ng "PowerPoint" para sa "Class" Ang parameter ng Lumikha ng pag-andar ng Bagay ay nabanggit ang panlabas na pangalan ng bagay sa mga dobleng quote bilang "PowerPoint.Application".

Code:

 Sub LumikhaObject_Example1 () Madilim ang PPT Bilang Itakda ng Bagay na PPT = LumikhaObject ("PowerPoint.Application") Tapusin ang Sub 

Ang function na Lumikha ng Bagay ay magpapasimula sa application ng PowerPoint. Kapag napasimulan ang bagay kailangan namin itong makita sa pamamagitan ng paggamit ng variable na pangalan.

Isa sa mga problema sa pamamaraang Lumikha ng Bagay o huli na paraan ng pagbubuklod ay hindi namin makita ang listahan ng intelektibo sa puntong oras, kailangan mong maging ganap na sigurado tungkol sa code na iyong sinusulat.

Para sa variable na "PPT" gamitin ang "Nakikitang" pag-aari at itakda ang katayuan bilang "Totoo".

Code:

 Sub LumikhaObject_Example1 () Madilim ang PPT Bilang Itinakda ng Bagay na PPT = LumikhaObject ("PowerPoint.Application") PPT.Visible = True End Sub 

Upang magdagdag ng slide sa PPT tukuyin ang linya sa ibaba ng VBA code.

Code:

 Sub LumikhaObject_Example1 () Madilim ang PPT Bilang Itinakda ng Bagay na PPT = LumikhaObject ("PowerPoint.Application") PPT. Makita = Tunay na PPT. Mga Paglalahad. Idagdag ang End Sub 

Manu-manong ipatupad ang code o sa pamamagitan ng F5 key at tingnan ang pagbubukas ng application na "PowerPoint".

Kapag ang application ng PowerPoint ay pinagana gamit ang variable na "PPT" maaari naming simulang i-access ang application na PowerPoint.

Halimbawa # 2

Ngayon makikita natin kung paano magsimula ng isang application ng Excel gamit ang pag-andar ng CreateObject sa VBA. Muli ring ideklara ang variable bilang "Bagay".

Code:

 Sub LumikhaObject_Example2 () Madilim ang ExcelSheet Bilang Bagay na Nagtatapos Sub 

Sa sandaling ideklara namin ang variable bilang object na sanhi ng huli na pagbubuklod at kailangan naming gamitin ang keyword na "Itakda" upang maitakda ang sanggunian para sa kinakailangang object.

Dahil tumutukoy kami upang excel worksheet mula sa excel ng application, ipasok ang "Excel.Sheet" sa mga dobleng quote.

Code:

 Sub LumikhaObject_Example2 () Madilim ang ExcelSheet Bilang Itakda ng Bagay na ExcelSheet = LumikhaObject ("Excel.Sheet") Tapusin ang Sub 

Kapag naitakda ang sanggunian para sa excel sheet kailangan namin itong makita upang magamit ito. Ito ay katulad sa kung paano namin ginawang nakikita ang application na PowerPoint.

Code:

 Sub LumikhaObject_Example2 () Madilim ang ExcelSheet Bilang Itakda ng Bagay na ExcelSheet = LumikhaObject ("Excel.Sheet") ExcelSheet.Application.Visible = True End Sub 

Ngayon ay buhayin nito ang worksheet ng excel.

Katulad nito upang simulan ang isang excel workbook mula sa iba pang mga produkto ng Microsoft maaari naming magamit ang code sa ibaba.

Code:

 Sub CreateObject_Example3 () Dim ExlWb Bilang Object Set ExlWb = CreateObject ("Excel.Application") ExlWb.Application.Visible = True End Sub 

Mga Bagay na Dapat Tandaan Tungkol sa CreateObject sa VBA

  • Sa VBA, ang pagpapaandar na CreateObject ay ginagamit upang sumangguni sa mga bagay.
  • Lumikha ng pag-andar ng Bagay na sanhi ng isang proseso ng huli na pagbubuklod.
  • Gamit ang paglikha ng pag-andar ng object ay hindi namin ma-access ang listahan ng talino ng VBA.