Excel VBA atkarīgās kombinētās kastes - vienkārši Excel makro

Satura rādītājs

Zemāk mēs apskatīsim programmu Excel VBA kas izveido Userform, kas satur atkarīgās kombinētās kastes. Lietotāja veidlapa, kuru mēs izveidosim, izskatās šādi:

Lietotājs nolaižamajā sarakstā izvēlas dzīvniekus. Tā rezultātā lietotājs var izvēlēties dzīvnieku no otrā nolaižamā saraksta.

Lietotājs nolaižamajā sarakstā izvēlas Sports. Tā rezultātā lietotājs var izvēlēties sporta veidu no otrā nolaižamā saraksta.

Lai izveidotu šo Userform, veiciet tālāk norādītās darbības.

1. Atveriet Visual Basic redaktoru. Ja Project Explorer nav redzams, noklikšķiniet uz View, Project Explorer.

2. Noklikšķiniet uz Ievietot, Lietotāja forma. Ja Toolbox neparādās automātiski, noklikšķiniet uz View, Toolbox. Ekrāns ir jāiestata, kā norādīts zemāk.

3. Pievienojiet kombinētos lodziņus (pirmais kreisajā pusē, otrais labajā pusē) un komandu pogu. Kad tas ir pabeigts, rezultātam jāatbilst iepriekš parādītajam Userform attēlam. Piemēram, izveidojiet kombinētā lodziņa vadīklu, rīkjoslā noklikšķinot uz ComboBox. Pēc tam lietotāja veidlapā varat vilkt kombinēto lodziņu.

4. Varat mainīt vadīklu nosaukumus un parakstus. Vārdi tiek izmantoti Excel VBA kodā. Paraksti ir tie, kas parādās jūsu ekrānā. Ir laba prakse mainīt vadības ierīču nosaukumus, taču šeit tas nav nepieciešams, jo šajā piemērā mums ir tikai dažas vadīklas. Lai mainītu lietotāja formas un komandas pogas parakstu, noklikšķiniet uz Skatīt, Rekvizītu logs un noklikšķiniet uz katras vadīklas.

5. Lai parādītu Userform, ievietojiet komandas pogu savā darblapā un pievienojiet šādu koda rindiņu:

Privāta apakškomandaButton1_Click ()
UserForm1.Show
Beigu apakš

Tagad mēs izveidosim Sub UserForm_Initialize. Ja lietotāja veidlapai izmantojat Rādīšanas metodi, šī apakšiedaļa tiks izpildīta automātiski.

6. Atveriet Visual Basic redaktoru.

7. Project Explorer ar peles labo pogu noklikšķiniet uz UserForm1 un pēc tam noklikšķiniet uz Skatīt kodu.

8. Kreisajā nolaižamajā sarakstā izvēlieties Userform. Nolaižamajā labajā sarakstā atlasiet Inicializēt.

9. Pievienojiet šādas koda rindiņas:

Privāts apakšlietotājsForm_Initialize ()
Ar ComboBox1
.AddItem "Dzīvnieki"
.AddItem "Sports"
.AddItem "Pārtika"
Beigt ar
Beigu apakš

Paskaidrojums: šīs koda rindiņas aizpilda pirmo kombinēto lodziņu.

Tagad esam izveidojuši Userform pirmo daļu. Lai gan tas jau izskatās glīti, nekas vēl nenotiks, kad izvēlēsimies vienumu no pirmās kombinētās kastes.

10. Project Explorer veiciet dubultklikšķi uz UserForm1.

11. Veiciet dubultklikšķi uz pirmā kombinētā lodziņa.

12. Pievienojiet šādas koda rindiņas:

Privāta apakškombinācija1_Change ()
Dim indekss Kā vesels skaitlis
indekss = ComboBox1.ListIndex
ComboBox2.Skaidrs
Atlasiet lietu indekss
Lieta ir = 0
Ar ComboBox2
.AddItem "Suns"
.AddItem "Kaķis"
.Pievienot "Zirgs"
Beigt ar
Lieta ir = 1
Ar ComboBox2
.Pievienot "Teniss"
.Pievienot "Peldēšana"
.Pievienot "Basketbols"
Beigt ar
Lieta ir = 2
Ar ComboBox2
.AddItem "Pankūkas"
.AddItem "Pica"
.AddItem "ķīniešu"
Beigt ar
Beigas Atlasīt
Beigu apakš

Paskaidrojums: Excel VBA izmanto mainīgā indeksa vērtību, lai pārbaudītu katru nākamo gadījuma paziņojumu, lai noskaidrotu, ar kādiem vienumiem jāaizpilda otrais kombinētais lodziņš. Apmeklējiet programmu Select Case, lai uzzinātu vairāk par Select Case struktūru.

13. Veiciet dubultklikšķi uz pogas Importēt.

14. Pievienojiet šādu koda rindiņu:

Privāta apakškomandaButton1_Click ()
Diapazons ("A1"). Vērtība = ComboBox2.Value
Beigu apakš

Rezultāts:

Jums palīdzēs attīstību vietā, daloties lapu ar draugiem

wave wave wave wave wave