Tämä opetusohjelma osoittaa, kuinka tietojen validoinnin avulla voit työskennellä avattavien luetteloiden kanssa Excelissä VBA: n avulla.
Excel -tietojen validoinnin avulla voit rajoittaa soluun tai alueeseen syötettäviä arvoja. Voit rajoittaa syötteet positiivisiin kokonaislukuihin, tekstiin, päivämääriin ja paljon muuta. Tässä opetusohjelmassa tarkastelemme kuinka luodaan tietojen validoinnin pudotusvalikko soluun VBA: ta käyttäen.
Huomautus: Vaihtoehto tietojen validoinnin pudotusvalikolle on ListBox-objekti. ListBoxit voidaan lisätä Excel -laskentataulukoihin. ListBoxes voi laukaista makroja, jotka suoritetaan aina, kun ListBox -arvoa muutetaan. ListBoxeja käytetään myös VBA Userformsissa.
Avattavan luettelon luominen VBA: n avulla
Meillä on teksti Hedelmä solussa A1, ja aiomme luoda avattavan luettelon soluun A2, jossa on viisi merkintää.
Käytämme Validation.Add -menetelmää ja määritämme, että Type -parametri on xlValidateList. Voit lisätä haluamasi kohteet luetteloosi käyttämällä Kaava1 -parametria.
Seuraava koodi luo avattavan tietojen validointiluettelon soluun A2:
123456 | Sub DropDownListinVBA ()Alue ("A2"). Validation.Add Type: = xlValidateList, AlertStyle: = xlValidAlertStop, _Kaava1: = "Oranssi, omena, mango, päärynä, persikka"End Sub |
Tulos on:
Täytä pudotusvalikko nimetyllä alueella VBA: ssa
Voit käyttää nimettyä aluetta, joka sisältää kohteet, täyttääksesi avattavan luettelon VBA: ssa. Meillä on nimetty alue Eläimet alla:
Meidän on asetettava Formula1 -parametri samaksi kuin nimetty alue. Seuraava koodi luo avattavan tietojen validointiluettelon soluun A7 nimetyn alueen kohteiden perusteella:
123456 | AlipopulaatioFromANamedRange ()Alue ("A7"). Validation.Add Type: = xlValidateList, AlertStyle: = xlValidAlertStop, _Kaava1: = "= Eläimet"End Sub |
Tulos on:
Avattavan luettelon poistaminen
Voit poistaa avattavan luettelon solusta käyttämällä Validation.Delete -menetelmää. Seuraava koodi poistaisi avattavan luettelon solusta A7 yllä olevassa esimerkissä:
12345 | Sub RemoveDropDownList ()Alue ("A7"). Validation.DeleteEnd Sub |