Paano Lumikha at Gumamit ng Mga Module ng VBA Class? (Mga Halimbawa)

Mga Modyul ng Klase ng Excel VBA

Kapag ginamit namin ang VBA ginagamit namin ang mga katangian at katangian na tinukoy sa VBA ngunit kung ano ang mangyayari kung nais naming lumikha ng aming sariling mga katangian at pamamaraan at katangian, iyon ay kapag gumamit kami ng isang module ng klase sa VBA upang maaari naming itong tinukoy ng gumagamit, isang klase ng module ay may sariling hanay ng mga code na tinukoy para sa mga pagpapaandar, katangian, at bagay ng gumagamit.

Ginagamit ang Mga Modyul ng Klase upang lumikha ng isang bagay. Kapag sinabi nating mga bagay kahit na ito ay isang variable iyan ay maliliit na programa. Habang sinusulat ang code ay karaniwang nagsusulat kami sa mga module. Ang mga pangunahing module ay kung saan nagsusulat kami ng aming mga code upang magawa ang trabaho. Gumagamit din kami ng Form ng Gumagamit upang lumikha ng Mga interface ng User ng Grapiko.

Ngunit kung titingnan mo ang nasa itaas na imahe maaari mong makita ang "Class Module". Alam kong sigurado na hindi mo pa ito hinawakan hanggang sa mabasa mo ang post na ito. Dapat ay nagtataka ka kung ano ang module ng klase ng VBA na ito kung kailan magagawa ang lahat ng trabaho sa pamamagitan ng paggamit ng aming regular na Modyul mismo.

Ano ang Modyul ng Klase?

Pinapayagan ng Mga Modyul ng Klase ang isang gumagamit na lumikha ng kanilang sariling object tulad ng kung paano kami may mga built-in na bagay sa regular na mga module tulad ng "Mga Worksheet", "Mga Workbook", "Saklaw", at iba pa.

Tulad nito gamit ang isang module ng klase, makakalikha kami ng mga pasadyang bagay.

Ang klase ay may direktang ugnayan sa mga bagay. Halimbawa, mayroon kang isang diagram ng makina upang bumuo ng isang makina, ngunit tandaan na hindi pa ito isang makina at gamit ang diagram ng makina na ito maaari kaming bumuo ng maraming mga makina na tulad nito.

Halimbawa, kung nais mong ilista ang iba't ibang mga tatak ng makina upang ilista ang mga katangian ng iba't ibang mga modelo.

Sa makina mayroon kaming isang pangalan ng tatak, numero ng serye, lakas ng makina, kulay ng makina, bilang ng mga motor na kasangkot dito, uri ng fuel fuel, atbp.… Sa teknikal na wika tinawag itong "mga katangian".

Na patungkol sa mga pag-aari ng makina, maaari kaming magsimula, maaari naming i-off, maaari nating taasan ang bilis ng motor, maaari kaming i-pause, atbp ... At ang mga ito ay tinatawag na "Mga Paraan".

Halimbawa

Maaari mong i-download ang VBA Class Template na ito dito - VBA Class Template

Simulan natin ang bola na lumiligid dahil palaging ito ang nakakainip na bagay na basahin ang teoretikal na bahagi. Upang magpasok ng isang module ng klase pumunta upang ipasok ang pagpipilian sa visual basic editor.

Ngayon ay makakakita tayo ng isang module ng klase tulad ng nasa ibaba.

Mukha itong katulad sa mayroon kami sa itaas bilang isang regular na module. Baguhin ang pangalan ng module ng klase sa window ng mga pag-aari. Upang makita ang window ng mga pag-aari pindutin ang F4 key.

Ngayon ideklara ang variable bilang isang string.

Nang hindi lumilikha ng isang subprocedure sa vba kailangan naming ideklara ang variable at sa oras na ito din gamit ang salitang "Public" hindi "Dim".

Ngayon ay maaari nating ma-access ang variable na ito sa anumang module at module ng klase.

Pumunta ngayon sa isang regular na module at pangalanan ang variable.

Matapos ideklara ang variable kailangan namin upang italaga ang uri ng data sa VBA, sa halip na italaga ang uri ng data maaari lamang nating ibigay ang pangalan ng module ng klase ibig sabihin ay CM

Gamit na ngayon ang variable na "k" maaari naming ma-access ang variable ng publiko na natukoy namin sa module ng klase ibig sabihin ay "Ang Aking Halaga".

Tulad ng nakikita natin sa larawan sa itaas ipinapakita nito ang pagpipilian ng variable na pangalan mula sa module ng klase upang italaga ang halaga dito.

Ipakita ngayon ang halaga ng itinalagang variable sa kahon ng mensahe ng VBA.

Code:

 Sub Class_Example () Dim k Bilang Bagong CM k.MyValue = "Hello" MsgBox k.MyValue End Sub 

Patakbuhin ang code na ito gamit ang F5 key o manu-mano upang maipakita ang resulta.

Class Modyul kumpara sa Mga Bagay

Sa paunang yugto ng module ng klase, ang lahat ay nalilito sa kung ano ang klase at kung ano ang isang bagay.

Upang maunawaan na ito naalala ang aming naunang halimbawa ng isang diagram ng makina. Ang unang bagay na kailangan namin upang makabuo ng isang makina ay kailangan muna nating idisenyo ang makina at pagkatapos maraming mga kopya ang maaaring kopyahin sa disenyo na iyon.

Iugnay ito ngayon sa aming module ng klase.

  • Dito Modyul ng Klase ay isang Disenyo At Bagay ay ang kopya na nilikha ng Disenyo
  • Isa pang kagiliw-giliw na bagay ay kailangan nating gamitin ang salitang "bago" upang lumikha ng isang bagay mula sa module ng klase.

Nasa ibaba ang isang halimbawa ng pareho.

Isa pang bagay kapag gumagamit kami ng mga built-in na bagay tulad ng mga worksheet, workbook, at range na bagay na hindi namin ginagamit ang salitang "bago"

Upang simulan ang mga pagpapatuloy sa Class Modyul, ang mga pangunahing bagay na dapat mong malaman. Sa mga darating na artikulo, makikita natin ang susunod na mga halimbawa ng antas.

Tila mahirap maintindihan ito, mas maraming oras na ginugol mo sa isang module ng klase ay masasanay ka rito.