Excel VBA Userform | Paano Lumikha ng isang Interactive na Userform?

Excel VBA Userform

Userform sa VBA ay na-customize na mga form na tinukoy ng gumagamit na ginawa upang kumuha ng input mula sa isang gumagamit sa format ng isang form, mayroon itong iba't ibang mga hanay ng mga kontrol upang idagdag tulad ng mga kahon ng teksto, mga label ng checkbox, atbp upang gabayan ang isang gumagamit na maglagay ng isang halaga at nag-iimbak ang halaga sa worksheet, ang bawat bahagi ng form ng gumagamit ay may isang natatanging code kasama nito.

Ang Userform ay isang bagay sa loob ng interface ng Excel at sa loob ng form ng gumagamit na ito, makakalikha kami ng iba pang mga kapaki-pakinabang na pasadyang kahon ng dayalogo upang makuha ang data mula sa gumagamit. Kapag nagtatrabaho ka sa isang macro file na nilikha ng iyong nakatatanda o maaaring ma-download mula sa internet dapat ay nakakita ka ng isang form ng gumagamit na tulad nito.

Sa artikulong ito, ipapakita namin sa iyo kung paano lumikha ng isang katulad na form ng gumagamit upang maiimbak ang data mula sa gumagamit.

Paano Lumikha ng Userform?

Tulad ng kung paano mo pinapasok ang isang bagong module nang katulad kailangan mong mag-click sa pindutang INSERT sa Visual Basic Editor upang ipasok ang Userform.

Maaari mong i-download ang VBA Userform Excel Template na ito dito - VBA Userform Excel Template

Sa sandaling mag-click sa ito, ang form ng gumagamit ay maipapasok din.

Bago ko sabihin sa iyo kung paano i-program ito hayaan mo akong ipakita sa iyo kung paano i-format ang form ng gumagamit na ito.

Pag-format ng Userform

Sa pamamagitan ng pagpili sa pindutang F4 key ng form ng gumagamit, ipapakita nito sa iyo ang window ng mga pag-aari.

Gamit ang window ng mga pag-aari na ito maaari nating mai-format ang form ng gumagamit na ito, maaari natin itong pangalanan, maaari nating baguhin ang kulay, istilo ng hangganan atbp…

Tulad nito subukan ang iba pang mga pag-aari upang makita ang form ng gumagamit.

Ngayon para sa insert na Toolbox ng form ng gumagamit na ito.

Ngayon makikita namin ang isang toolbox na tulad nito.

Sa sandaling ito ang form ng gumagamit ay naipasok lamang na hindi na-program. Upang malaman kung paano ito gumagana mag-click lamang sa run button, makikita namin ang form sa excel worksheet.

Gumagamit na ngayon ng label ng draw ng ToolBox.

Ipasok ang Teksto bilang Pangalan ng empleyado sa loob ng label.

Para sa label na ito, upang makapag-format kami sa pamamagitan ng paggamit ng mga pag-aari. Ngayon ay naipasok na namin ang teksto bilang "Pangalan ng empleyado:" ngayon makikita na namin ito sa window ng mga pag-aari sa ilalim ng Mga Caption.

Ipasok ang isa pang label. Upang magsingit ng isa pang label alinman maaari kang mag-click sa isang toolbox o maaari mong i-drag ang kasalukuyang label sa pamamagitan ng paghawak Ctrl susi, magkakaroon ka ng isang kopya ng kasalukuyang label.

Ngayon magkakaroon kami ng parehong label.

Palitan ang pangalan ng ID ng empleyado.

Ngayon ay katulad na ipasok ang isa pang label at pangalanan ito bilang "Kagawaran".

Ngayon mula sa toolbox ipasok ang isang text box.

Pangalanan ang text box na ito bilang EmpName sa window ng mga pag-aari.

Tulad ng pagsingit nito ng dalawa pang mga text box mula sa Empleyado ID at Kagawaran ayon sa pagkakabanggit. Pangalanan ang mga kahon ng teksto ayon sa kanilang heading.

Katulad nito, gawin ito para sa Kagawaran.

Ngayon mula sa toolbox ipasok ang Command Button.

Palitan ang Pangalan ng Command Button na "Magsumite ng pindutan" at baguhin ang caption sa "Ipasa".

Ipasok ang isa pang pindutan at tawagan itong "Kanselahin".

Ngayon lamang upang makita ang run pindutin ang run button o gumamit ng F5 key at makita kung paano ang hitsura ng iyong form ng gumagamit sa Excel.

Ngayon ay darating na sa hugis.

VBA Code

Ngayon ay maglalagay ang gumagamit ng data dito, kaya kailangan naming i-program ito upang maiimbak ang data na ipinasok ng gumagamit sa form na ito.

Mag-double click sa pindutang SUBMIT, dadalhin ka nito sa window ng macro na may isang awtomatikong nilikha na macro tulad ng nasa ibaba.

Sinasabi nito ang pag-click sa Pagsumite ng pindutan, tandaan na nagbigay kami ng isang pangalan para sa pindutang SUBMIT bilang Isumite ng pindutan.

Kaya, tuwing nais naming tawagan ang pindutang ito maaari naming itong tawagan sa pangalang ito (isumite ang pindutan). Sa loob ng kopya ng macro na ito at i-paste ang code sa ibaba.

Code:

 Pribadong Sub Isumite Button_Click () Dim LR Bilang Mahabang LR = Mga Cell (Rows.Count, 1). Tapusin (xlUp). Row + 1 Cells (LR, 1). Value = EmpName.Value Cells (LR, 2). Value = EmpID .Value Cells (LR, 3) .Value = Dept.Value EmpName.Value = "" EmpID.Value = "" Dept.Value = "" End Sub 

  • EmpName.Value narito ang EmpName ay ang pangalan ng text box na ibinigay namin habang nilikha ang kahon ng teksto ng pangalan ng empleyado.
  • EmpID.Value dito ang EmpID ay ang text box na pangalan ng text box ng empleyado ng ID.
  • Dept.Halaga ito ang pangalan ng kahon ng teksto ng departamento.

Kaya, sa pag-click sa isumite na pindutan ay maiimbak nito ang mga halaga sa nabanggit na mga cell.

Ngayon mag-double click sa Kanselahin na pindutan, ipapakita din nito sa iyo ang pangalan ng auto macro na tulad nito.

Kopyahin ang code sa ibaba at i-paste.

Code:

 Pribadong Sub Kanselahin Button_Click () MyUserForm.Hide End Sub 

MyUserForm ay ang pangalang ibinigay namin sa form ng gumagamit. MyUserForm.Hide nangangahulugang sa pag-click sa pindutan ng CANCEL itatago nito ang form ng gumagamit.

Ok, ngayon lumikha ng isang template na tulad nito sa worksheet.

Tanggalin ang lahat ng iba pang mga sheet sa workbook maliban sa template sheet na ito.

Pumunta ngayon sa Visual Basic Editor.

At patakbuhin ang macro gamit ang F5 key o manu-mano, makikita namin ang form ng gumagamit sa harap namin.

Ipasok ang pangalan ng empleyado, empleyado id, at pangalan ng Kagawaran.

Ngayon kung nag-click ka sa pindutan ng SUBMIT, itatabi nito ang mga halaga sa template na nilikha namin.

Tulad nito maaari mong panatilihin ang pagpasok ng mga pangalan, ang form ng gumagamit ay patuloy na maiimbak ang mga halagang ipinasok ng gumagamit sa mga tinukoy na mga cell.

Kaya sa pamamagitan ng paggamit ng USER FORM, makakagawa talaga kami ng mga magagandang proyekto upang makuha ang impormasyon mula sa gumagamit.