Excel VBA -riippuvaiset yhdistelmälaatikot - helppoja Excel -makroja

Sisällysluettelo

Alla tarkastelemme ohjelmaa Excel VBA joka luo Userformin, joka sisältää riippuvaiset yhdistelmälaatikot. Luomamme Userform näyttää seuraavalta:

Käyttäjä valitsee Eläimet avattavasta luettelosta. Tämän seurauksena käyttäjä voi valita eläimen toisesta avattavasta luettelosta.

Käyttäjä valitsee Urheilu avattavasta luettelosta. Tämän seurauksena käyttäjä voi valita lajin toisesta avattavasta luettelosta.

Voit luoda tämän käyttäjämuodon suorittamalla seuraavat vaiheet.

1. Avaa Visual Basic Editor. Jos Project Explorer ei ole näkyvissä, valitse Näytä, Project Explorer.

2. Napsauta Insert, Userform. Jos Työkaluryhmä ei näy automaattisesti, napsauta Näytä, Työkaluryhmä. Näyttö on asetettava alla kuvatulla tavalla.

3. Lisää yhdistelmäruudut (ensimmäinen vasemmalle, toinen oikealle) ja komentopainike. Kun tämä on suoritettu, tuloksen tulee olla yhdenmukainen aiemmin näytetyn Userform -kuvan kanssa. Luo esimerkiksi yhdistelmäruudun ohjausobjekti napsauttamalla Työkalulaatikosta Yhdistelmäruutu. Seuraavaksi voit vetää yhdistelmäruudun Userformissa.

4. Voit muuttaa säätimien nimiä ja kuvatekstejä. Nimiä käytetään Excel VBA -koodissa. Tekstitykset ovat niitä, jotka näkyvät näytölläsi. On hyvä käytäntö muuttaa säätimien nimiä, mutta se ei ole välttämätöntä, koska tässä esimerkissä on vain muutamia säätimiä. Jos haluat muuttaa Userform- ja komentopainikkeen kuvatekstejä, napsauta Näytä, Ominaisuudet -ikkuna ja napsauta jokaista ohjainta.

5. Jos haluat näyttää Userformin, aseta komentopainike laskentataulukkoosi ja lisää seuraava koodirivi:

Yksityinen alikomentoButton1_Click ()
UserForm 1.Näytä
End Sub

Aiomme nyt luoda Sub UserForm_Initialize. Kun käytät Näytä -menetelmää Userformissa, tämä osa suoritetaan automaattisesti.

6. Avaa Visual Basic Editor.

7. Napsauta Project Explorerissa hiiren kakkospainikkeella UserForm1 ja valitse sitten Näytä koodi.

8. Valitse Userform vasemmasta avattavasta luettelosta. Valitse Alusta oikeasta avattavasta luettelosta.

9. Lisää seuraavat koodirivit:

Yksityinen alikäyttäjäForm_Initialize ()
ComboBox 1: n kanssa
.AddItem "Eläimet"
.AddItem "Urheilu"
.AddItem "Ruoka"
Lopeta
End Sub

Selitys: Nämä koodirivit täyttävät ensimmäisen yhdistelmäruudun.

Olemme nyt luoneet Userformin ensimmäisen osan. Vaikka se näyttää jo siistiltä, ​​mitään ei vielä tapahdu, kun valitsemme kohteen ensimmäisestä yhdistelmäruudusta.

10. Kaksoisnapsauta Project Explorerissa UserForm1.

11. Kaksoisnapsauta ensimmäistä yhdistelmäruutua.

12. Lisää seuraavat koodirivit:

Yksityinen ali -yhdistelmälaatikko1_Muuta ()
Dim -indeksi kokonaislukuna
indeksi = ComboBox1.ListIndex
Yhdistelmälaatikko 2. selkeä
Valitse tapaushakemisto
Tapaus on = 0
ComboBox2: n kanssa
.AddItem "Koira"
.AddItem "Kissa"
.AddItem "Hevonen"
Lopeta
Tapaus = 1
ComboBox2: n kanssa
.AddItem "Tennis"
.AddItem "Uinti"
.AddItem "Koripallo"
Lopeta
Tapaus = 2
ComboBox2: n kanssa
.AddItem "Pannukakut"
.AddItem "Pizza"
.AddItem "kiinalainen"
Lopeta
Lopeta Valitse
End Sub

Selitys: Excel VBA käyttää muuttujaindeksin arvoa testatakseen jokaisen seuraavan tapauslausuman nähdäkseen, millä kohteilla toinen yhdistelmäruutu on täytettävä. Tutustu Select Case -ohjelmaan saadaksesi lisätietoja Select Case -rakenteesta.

13. Kaksoisnapsauta Tuo -painiketta.

14. Lisää seuraava koodirivi:

Yksityinen alikomentoButton1_Click ()
Alue ("A1"). Arvo = ComboBox2.Value
End Sub

Tulos:

Tulet auttaa kehittämään sivuston jakaminen sivu ystävillesi

wave wave wave wave wave