Alternativknapp Excel VBA

I VBA kan du skapa en Alternativknapp så att en användare kan välja mellan flera alternativ. En alternativknapp används ofta i användarformulär, men kan också användas i ett kalkylblad. I denna handledning lär du dig hur du skapar en alternativknapp, får ett användarval i VBA och använder det i kod.

Om du vill lära dig hur du skapar en kryssruta, klicka här: VBA -kryssruta

Skapa en alternativknapp

För att infoga en alternativknapp i kalkylbladet måste du gå till Fliken Utvecklare, klick Föra in och välj under ActiveX -kontroller Alternativknapp:

Bild 1. Sätt in en alternativknapp i kalkylbladet

När du väljer alternativknappen som du infogade kan du klicka på Egenskaper under Fliken Utvecklare:

Bild 2. Ändra alternativknappens egenskaper

Här kan du ställa in olika egenskaper för alternativknappen. Till att börja med ändrade vi attributet namn till optOptionButton1. Nu kan vi använda alternativknappen med detta namn i VBA -kod.

Vi ändrade också texten som visas bredvid alternativknappen till Manlig. För att göra detta måste du ange attributet Rubrik.

Eftersom vi vill tillåta en användare att välja kön, kommer vi att upprepa hela processen för en annan alternativknapp. Den andra har namn optOptionButton2, medan bildtexten är Kvinna. Du kan också skapa en ny alternativknapp genom att kopiera den befintliga och ändra egenskaper. Nu har vårt arbetsblad två alternativknappar:

Bild 3. Sätt in den andra alternativknappen

Få en vald alternativknapp i VBA

Syftet med en alternativknapp är att få ett användarbeslut. Vi kommer att visa i exemplet hur man skriver Manlig i cellen C3 om alternativknappen 1 är vald eller Kvinna om den andra väljs. Varje alternativknapp har sin händelse som utlöses när den väljs - Klick.

Därför måste vi för den första alternativknappen lägga in följande kod i händelsen Klick av föremålet optOptionButon1:

123456789 Privat suboptOptionButton1_Click ()If Sheet1.optOptionButton1.Value = True ThenSheet1.Range ("C3") = "Manlig"Avsluta omAvsluta Sub

På samma sätt kommer vi att lägga den här koden i händelsen Klick av föremålet optOptionButton2:

123456789 Privat suboptOptionButton2_Click ()If Sheet1.optOptionButton2.Value = True ThenSheet1.Range ("C3") = "Kvinna"Avsluta omAvsluta Sub

Värdet på alternativknappen finns iVärde objektets attribut optOptionButton1 eller optOptionButton2. Värdet på alternativknappen kan vara sant om det är valt eller falskt om det inte är valt.

Bild 3. Återvänd hane om den första alternativknappen är vald

Som du kan se i bild 3 klickade vi på den första alternativknappen. Därför värdet av Sheet1.optOptionButton1.Value är sant, så resultatet i C3 är Manlig.

Bild 4. Returnera hona om den andra alternativknappen väljs

På samma sätt som det föregående exemplet ändras värdet på C3 till Kvinna, eftersom vi har valt den andra alternativknappen. I det här fallet, proceduren optOptionButton2_Click () är triggad.

Använd en alternativknapp i en användarform

Som vi nämnde används alternativknappen oftast i användarformulär. För att förklara hur du kan göra kommer vi först att infoga en användarform. I VBA-editor, högerklicka på modulnamn, klicka på Föra in och välj UserForm:

Bild 5. Infoga en användarform

För att visa kontroller för infogning måste du aktivera Verktygslåda. För att göra detta, klicka påVerktygslåda ikonen i verktygsfältet. Efter det får du fönstren med alla tillgängliga kontroller. Du kan klicka påAlternativknapp för att skapa den i användarformen:

Bild 6. Sätt in en alternativknapp i användarformuläret

I egenskapsfönstret ändrar vi namnet på alternativknappen till optOptionButton1 och bildtext till Manlig. På samma sätt skapade vi en annan alternativknapp för kvinnor. När vi kör Userform får vi två alternativknappar:

Bild 7. Två alternativknappar i Userform

Om du vill få en vald alternativknapp måste du använda samma logik som för ett kalkylblad, vilket förklaras tidigare i artikeln.

wave wave wave wave wave