Çdo kuti dialogu Excel që krijoni në VBA ruhet në objektin e vet UserForm - një kuti dialogu për UserForm. Ju krijoni dhe aksesoni këto Forma Përdoruesi në Redaktuesin Visual Basic.
Futja e një Formulari të ri Përdoruesi
Fusni një objekt UserForm duke ndjekur këto hapa:
Aktivizoni VBE duke shtypur Alt+F11.
Zgjidhni librin e punës që do të mbajë UserForm në dritaren e Projektit.
Zgjidhni Fut → Forma e Përdoruesit.
VBE fut një objekt të ri UserForm, i cili përmban një kuti dialogu bosh.
Këtu është një UserForm - një kuti dialogu bosh. Detyra juaj, nëse vendosni ta pranoni, është të shtoni disa kontrolle në këtë UserForm.
Një objekt i ri UserForm.
Shtimi i kontrolleve në një UserForm
Kur aktivizoni një UserForm, VBE shfaq Toolbox në një dritare lundruese. Ju përdorni veglat në Toolbox për të shtuar kontrolle në Formularin tuaj të Përdoruesit. Nëse, për ndonjë arsye, Kutia e Veglave nuk shfaqet kur aktivizoni Formularin tuaj të Përdoruesit, zgjidhni Shiko → Kutia e veglave.
Për të shtuar një kontroll, thjesht klikoni kontrollin e dëshiruar në Toolbox dhe tërhiqeni atë në kutinë e dialogut për të krijuar kontrollin. Pasi të shtoni një kontroll, mund ta zhvendosni dhe ndryshoni përmasat e tij duke përdorur teknika standarde.
Këtu është një listë e mjeteve të ndryshme, si dhe aftësitë e tyre.
Kontrolli |
Çfarë bën |
Etiketa |
Tregon tekst |
Kuti teksti |
Lejon përdoruesin të fusë tekst |
ComboBox |
Shfaq një listë rënëse |
Kutia e Listës |
Shfaq një listë të artikujve |
Kutia e kontrollit |
Ofron opsione të tilla si ndezje/fikje ose po/jo |
Option Button |
Lejon përdoruesin të zgjedhë një nga disa opsione; përdoret në
grupe prej dy ose më shumë |
ToggleButton |
I mundëson përdoruesit të ndezë ose çaktivizojë një buton |
Kornizë |
Përmban kontrolle të tjera |
CommandButton |
Një buton i klikueshëm |
TabStrip |
Shfaq skedat |
Shumëfaqesh |
Një enë me skeda për objekte të tjera |
Shiriti i Lëvizjes |
I mundëson përdoruesit të zvarritë një shirit për të vendosur një cilësim |
SpinButton |
I mundëson përdoruesit të klikojë një buton për të ndryshuar një vlerë |
Imazhi |
Mban një imazh |
RefEdit |
Lejon përdoruesin të zgjedhë një gamë |
Ndryshimi i vetive për një kontroll UserForm
Çdo kontroll që shtoni në një UserForm ka veti që përcaktojnë se si duket ose sillet kontrolli. Për më tepër, vetë UserForm ka grupin e vet të vetive. Ju mund t'i ndryshoni këto veti me dritaren me emrin e duhur "Properties". Kjo tregon dritaren Properties kur zgjidhet një kontroll CommandButton.
Përdorni dritaret Properties për të ndryshuar vetitë e kontrolleve UserForm.
Dritarja Properties shfaqet kur shtypni F4 dhe vetitë e shfaqura në këtë dritare varen nga ajo që është zgjedhur. Nëse zgjidhni një kontroll tjetër, vetitë ndryshojnë në ato të përshtatshme për atë kontroll. Për të fshehur dritaren e Vetive dhe për ta hequr atë nga rruga, klikoni butonin Mbyll në shiritin e titullit. Shtypja e F4 e kthen gjithmonë kur ju nevojitet.
Karakteristikat për kontrollet përfshijnë si më poshtë:
-
Emri
-
Gjerësia
-
Lartësia
-
Vlera
-
Titulli
Çdo kontroll ka grupin e vet të vetive (edhe pse shumë kontrolle kanë disa veti të përbashkëta). Për të ndryshuar një pronë duke përdorur dritaren e Veçorive, ndiqni këto hapa:
Sigurohuni që kontrolli i saktë është zgjedhur në UserForm.
Sigurohuni që dritarja Properties të jetë e dukshme.
Në dritaren Properties, klikoni pronën që dëshironi të ndryshoni.
Bëni ndryshimin në pjesën e djathtë të dritares së "Properties".
Nëse zgjidhni vetë UserForm (jo një kontroll në UserForm), mund të përdorni dritaren Properties për të rregulluar vetitë UserForm.
Duke parë dritaren e Kodit të Formës së Përdoruesit
Çdo objekt UserForm ka një modul Kodi që mban kodin VBA (procedurat e trajtuesit të ngjarjeve) që ekzekutohet kur përdoruesi punon me kutinë e dialogut. Për të parë modulin e kodit, shtypni F7. Dritarja e kodit është bosh derisa të shtoni disa procedura. Shtypni Shift + F7 për t'u kthyer në kutinë e dialogut.
Këtu është një mënyrë tjetër për të kaluar midis dritares së Kodit dhe ekranit të Formës së Përdoruesit: Përdorni butonat View Code dhe View Object në shiritin e titullit të dritares së Projektit. Ose kliko me të djathtën në UserForm dhe zgjidhni View Code. Nëse jeni duke parë kodin, klikoni dy herë mbi emrin UserForm në dritaren e Projektit për t'u kthyer në UserForm.
Shfaqja e një Formulari Përdoruesi
Ju shfaqni një UserForm duke përdorur metodën Show UserForm në një procedurë VBA.
Makroja që shfaq kutinë e dialogut duhet të jetë në një modul VBA - jo në dritaren e Kodit për UserForm.
Procedura e mëposhtme shfaq kutinë e dialogut të quajtur UserForm1:
Nën ShowDialogBox()
UserForm1.Trego
Deklaratat e tjera mund të shkojnë këtu
Fundi Nën
Kur Excel shfaq kutinë e dialogut, makroja ShowDialogBox ndalon derisa përdoruesi të mbyllë kutinë e dialogut. Pastaj VBA ekzekuton çdo deklaratë të mbetur në procedurë. Shumicën e kohës, nuk do të keni më kod në procedurë. Siç e shihni më vonë, ju vendosni procedurat tuaja të mbajtësit të ngjarjeve në dritaren e Kodit për UserForm. Këto procedura fillojnë kur përdoruesi punon me kontrollet në UserForm.
Përdorimi i informacionit nga një UserForm
VBE ofron një emër për çdo kontroll që shtoni në një UserForm. Emri i kontrollit korrespondon me vetinë e tij Emri. Përdorni këtë emër për t'iu referuar një kontrolli të veçantë në kodin tuaj. Për shembull, nëse shtoni një kontroll CheckBox në një UserForm të quajtur UserForm1, kontrolli CheckBox quhet CheckBox1 si parazgjedhje. Ju mund të përdorni kutinë Properties për ta bërë këtë kontroll të shfaqet me një shenjë kontrolli. Ose mund të shkruani kod për ta bërë atë:
UserForm1.CheckBox1.Value = E vërtetë
Shumicën e kohës, ju shkruani kodin për një UserForm në modulin e kodit të UserForm. Nëse është kështu, mund të hiqni kualifikuesin e objektit UserForm dhe të shkruani deklaratën si kjo:
CheckBox1.Vlera = E vërtetë
Kodi juaj VBA gjithashtu mund të kontrollojë vetitë e ndryshme të kontrolleve dhe të ndërmarrë veprimet e duhura. Deklarata e mëposhtme ekzekuton një makro të quajtur PrintReport nëse kontrollohet kutia e kontrollit (me emrin CheckBox1):
Nëse CheckBox1.Value = True, atëherë thirrni PrintReport
Zakonisht është një ide e mirë të ndryshoni emrin e paracaktuar që VBE u ka dhënë kontrolleve tuaja në diçka më kuptimplote.