/ / Excel VBA listrutan

Excel VBA-listrutan

En listruta är en lista där en användare kan välja ett objekt. För att skapa en listrutan i Excel VBA, utför följande steg.

1. På fliken Utvecklare klickar du på Infoga.

2. Klicka på listrutan i ActiveX Controls-gruppen.

Skapa en listrutan i Excel VBA

3. Dra en listrutan i ditt arbetsblad.

Dra en listruta

Notera: Du kan ändra namnet på en kontroll genom att högerklicka på kontrollen (se till att designläget är valt) och klicka sedan på Egenskaper. För tillfället lämnar vi ListBox1 som namnet på listrutan.

Skapa en Arbetsbok Open Event. Kod som läggs till i Arbetsbokens öppna händelse kommer att utföras av Excel VBA när du öppnar arbetsboken.

4. Öppna Visual Basic Editor.

5. Dubbelklicka på Den här Arbetsboken i Project Explorer.

6. Välj Arbetsbok från den vänstra rullgardinsmenyn och välj Öppna från den nedrullningsbara listan.

Arbetsbok Open Event i Excel VBA

7. Lägg till artiklar i listrutan genom att lägga till följande kodlinjer i Arbetsbokens öppna händelse:

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

Notera: använd Sheet2 om din listrutan finns på det andra arbetsbladet Sheet 3 om din listrutan finns i det tredje arbetsbladet. Om du använder dessa kodlinjer utanför arbetsbokens öppna händelse kanske du vill lägga till följande kodlinje innan dessa kodlinjer. Denna kodrad rensar listrutan. På så vis kommer dina saker inte att läggas till flera gånger om du utför koden mer än en gång.

ListBox1.Clear

8. För att länka den här listrutan till en cell, högerklicka på listrutan (se till att designläget är valt) och klicka på Egenskaper. Fyll i D3 för LinkedCell.

LinkedCell

Obs! Se även egenskapen ListFillRange för att fylla i en listruta med ett antal celler.

9. Spara, stäng och öppna Excel-filen igen.

Resultat:

Listrutan

Även om det i vissa situationer kan vara användbart att direkt placera en listruta i ditt arbetsblad, är en listruta särskilt användbar när den placeras på en Userform.

Läs också: