300 Esimerkkejä

Monisarakkeinen yhdistelmälaatikko

Multicolumn Combo Box

Alla tarkastelemme ohjelmaa Excel VBA joka luo Userformin, joka sisältää monisarakkeinen yhdistelmälaatikko .





Luomamme Userform näyttää seuraavalta:

Monisarakkeinen yhdistelmälaatikko Excel VBA: ssa





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

Kuinka voin lisätä avattavan valintaruudun Exceliin

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äytön asetukset on määritettävä alla kuvatulla tavalla.

Userform -näytön asetukset Excel VBA: ssa

3. Lisää tarra, yhdistelmäruutu ja komentopainikkeet. Kun tämä on suoritettu, tuloksen tulee olla yhdenmukainen aiemmin näytetyn Userform -kuvan kanssa. Luo esimerkiksi yhdistelmäruudun ohjausobjekti napsauttamalla Työkalupakissa olevaa Yhdistelmäruutua. 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-, tarra- ja komentopainikkeiden kuvatekstejä, napsauta Näytä, Ominaisuudet -ikkuna ja napsauta jokaista ohjainta.

5. Tuo Userform näkyviin asettamalla a komentopainiketta laskentataulukkoon ja lisää seuraava koodirivi:

kuinka muuntaa aika Excelissä
Yksityinen SubCommandButton1_Click ()

UserForm 1.Näytä

Loppu 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 SubUserForm_Initialize ()

ComboBox1.ColumnCount = 2

Ei mitäänElokuvat (1Vastaanottaja5, 1Vastaanottaja2)Kuten Jousisoitin
Ei mitääniKuten Kokonaisluku, jKuten Kokonaisluku

Elokuvat (1, 1) = 'Sormusten herra'
Films (2, 1) = 'Nopeus'
Elokuvat (3, 1) = 'Tähtien sota'
Elokuvat (4, 1) = 'Kummisetä'
Elokuvat (5, 1) = 'Pulp Fiction'

Elokuvat (1, 2) = 'Seikkailu'
Elokuvat (2, 2) = 'Toiminta'
Elokuvat (3, 2) = 'Sci-Fi'
Elokuvat (4, 2) = 'Rikos'
Elokuvat (5, 2) = 'Draama'

ComboBox1.List = Elokuvat

Loppu Sub

Selitys: Ensimmäinen koodirivi asettaa yhdistelmäruudun sarakkeiden lukumääräksi 2. Sen sijaan, että määrittäisit sarakkeiden määrän ajon aikana, voit määrittää tämän asetuksen myös suunnitteluaikana. Tämän saavuttamiseksi napsauta hiiren kakkospainikkeella yhdistelmäruudun ohjausobjektia, valitse Ominaisuudet ja aseta ColumnCount -ominaisuudeksi 2. Seuraavaksi ilmoitamme ja alustamme kaksiulotteinen matriisi . Viimeinen koodirivi määrittää taulukon yhdistelmäruudulle.

Olemme nyt luoneet Userformin ensimmäisen osan. Vaikka se näyttää jo siistiltä, ​​mitään ei vielä tapahdu, kun napsautamme Userformin komentopainikkeita.

10. Kaksoisnapsauta Project Explorerissa UserForm1.

11. Kaksoisnapsauta OK -painiketta.

12. Lisää seuraavat koodirivit:

Yksityinen SubCommandButton1_Click ()

Purkaa minut

MsgBox 'Valitsit' & ComboBox1.Value

Päällä Virhe Jatkaa Seuraava
MsgBox 'Pidät' & ComboBox 1. sarake (1) ja 'elokuvat'

Loppu Sub

Huomautus: nämä koodirivit sulkevat Excel VBA -käyttölomakkeen ja näyttävät valitun kohteen ja tyylilajin. On Error Resume Next -lauseke jättää huomiotta virheen, kun käyttäjä täyttää oman elokuvansa (tässä tapauksessa lajityyppiä ei ole saatavilla).

13. Kaksoisnapsauta Peruuta -painiketta.

14. Lisää seuraava koodirivi:

Yksityinen SubCommandButton2_Click ()

Purkaa minut

Loppu Sub

Tulos, kun valitset Nopeus ja napsautat OK.

kuinka luoda pivot-taulukko Excel 2013: ssa

Monisarakkeisen yhdistelmälaatikon tulos

Monisarakkeisen yhdistelmälaatikon tulos

6/11 valmis! Lue lisää käyttäjämuodoista>
Siirry seuraavaan lukuun: Alue



^