/ / Excel VBA List Box

Excel VBA List Box

En listeboks er en liste der en bruker kan velge et element. Å opprette en listeboks i Excel VBA, utfør følgende trinn.

1. På fanen Utvikler klikker du Sett inn.

2. I ActiveX Controls-gruppen klikker du Listeboks.

Opprett en listeboks i Excel VBA

3. Dra en listeboks på regnearket.

Dra en listeboks

Merk: Du kan endre navnet på en kontroll ved å høyreklikke på kontrollen (pass på at designmodus er valgt), og klikk deretter på Egenskaper. For nå vil vi forlate ListBox1 som navnet på listeboksen.

Lag en Arbeidsbok Open Event. Koden som er lagt til i Arbeidsbokens Open Event, blir utført av Excel VBA når du åpner arbeidsboken.

4. Åpne Visual Basic Editor.

5. Dobbeltklikk på Denne arbeidsboken i Project Explorer.

6. Velg Arbeidsbok fra den venstre rullegardinlisten, og velg Åpne fra den høyre rullegardinlisten.

Arbeidsbok Åpen hendelse i Excel VBA

7. For å legge til elementer i listefeltet, legg til følgende kodelinjer i Arbeidsbokens åpne hendelse:

With Sheet1.ListBox1
    .AddItem "Paris"
    .AddItem "New York"
    .AddItem "London"
End With

Merk: bruk Sheet2 hvis listeboksen din er plassert på det andre regnearket, Sheet3 hvis listeboksen din er plassert i det tredje regnearket etc. Hvis du bruker disse kodelinjene utenfor Arbeidsbok-åpne-hendelsen, vil du kanskje legge til følgende kodelinje før disse kode linjer. Denne kodelinjen sletter listeboksen. På denne måten vil dine elementer ikke bli lagt til flere ganger hvis du kjører koden mer enn en gang.

ListBox1.Clear

8. For å koble denne listeboksen til en celle, høyreklikk på listeboksen (pass på at designmodus er valgt) og klikk på Egenskaper. Fyll ut D3 for LinkedCell.

LinkedCell

Merk: Se også ListFillRange-egenskapen for å fylle en listeboks med en rekke celler.

9. Lagre, lukk og åpne Excel-filen igjen.

Resultat:

Listeboks

Selv om det i noen situasjoner kan være nyttig å plassere en listeboks direkte på regnearket, er en listeboks spesielt nyttig når den plasseres på en brukerform.

Les også: