VBA: Das Steuerelement OptionButton

optionbutton4 1

Der OptionButton (Optionsfeld) ist eine Steuerelement aus den ActiveX-Steuerelementen.

Verwende ein OptionButton, um anzuzeigen, ob ein einzelnes Element innerhalb einer Gruppe ausgewählt wurde.

Du willst beispielsweise mit ausgewählten Werten aus der folgenden Liste wahlweise in zwei Verfahren rechnen.

OptionButton1

Einerseits sollen die Werte aus B26 und B28 subtrahiert werden, wenn ein OptionButton aktiv ist.

Andererseits sollen die Werte in B27 und B29 multipliziert werden, wenn ein zweiter OptionButton aktiv ist.

Füge zunächst zwei OptionButton in Dein Arbeitsblatt ein. Gehe dazu im Menü „Entwicklertools“ auf „Einfügen“ und wähle den OptionButton bei den ActiveX-Steuerelementen.

OptionButton2

Aktiviere danach eine Zelle Deines Arbeitsblattes, um das Steuerelement einzufügen.

Um den Hintergrund farbig zu gestalten, schaltest Du unter den „Entwicklertools“ in den „Entwurfsmodus“ und rufst „Eigenschaften“ auf.

Wähle unter „BackColor“ eine Farbe aus.

OptionButton3

Beide OptionButton stehen nun zur Verfügung.

OptionButton4

Die Berechnungsergebnisse sollen rechts daneben, in den Zellen D2 bzw. D4 ausgegeben werden.

Eröffne das Makro mit z.B. Sub OptionRechnen() in einem Modul.

Deklariere nun zuerst die Variablen für Dein Makro.

Dim Subtraktion As Long

Dim Multiplikation As Long

Weise ihnen Werte zu.

Subtraktion = Range(“B7”).Value – Range(“B9”).Value

Multiplikation = Range(“B8”).Value * Range(“B10”).Value

Weise nun an, was geschehen soll, wenn der OptionButton1 aktiv ist. Das machst Du mit einer If-Anweisung. Die Anweisung lautet, die definierte Subtraktion auszuführen und gleichzeitig das Ergebnisfeld für OptionButton2 zu leeren.

If Worksheets(“Tabelle1”).OptionButton1.Value = True Then

Range(“D2”) = Subtraktion

Range(“D4”).ClearContents

Weise dann an, was geschehen soll, wenn der OptionButton2 aktiv ist. Hier lautet die Anweisung, die definierte Multiplikation auszuführen und das Ergebnisfeld für OptionButton1 zu leeren.

ElseIf Worksheets(“Tabelle1”).OptionButton2.Value = True Then

Range(“D4”) = Multiplikation

Range(“D2”).ClearContents

Beende das Makro mit End If und End Sub.

Komplett sieht das Makro so aus:

Sub OptionRechnen()

Dim Subtraktion As Long

Dim Multiplikation As Long

Subtraktion = Range(“B7”).Value – Range(“B9”).Value

Multiplikation = Range(“B8”).Value * Range(“B10”).Value

If Worksheets(“Tabelle1”).OptionButton1.Value = True Then

Range(“D2”) = Subtraktion

Range(“D4”).ClearContents

ElseIf Worksheets(“Tabelle1”).OptionButton2.Value = True Then

Range(“D4”) = Multiplikation

Range(“D2”).ClearContents

End If

End Sub.

Füge zuletzt auf Deinem Arbeitsblatt noch eine Schaltfläche aus den Formularsteuerelementen ein und weise diesem das Makro „OptionRechnen“ zu.

Aktiviere nun OptionButton1 und klicke auf die Schaltfläche. Es wird die Subtraktion ausgeführt.

OptionButton5

Aktiviere jetzt OptionButton2 und klicke auf die Schaltfläche. Es wird die Multiplikation ausgeführt.

OptionButton6

Dies war nur ein einfaches Beispiel der Anwendung von OptionButton. Vieles andere ist denkbar.

Z.B. könnte die Aktivierung von OptionButto1 bzw. von OptionButton2 jeweils ein weiteres Makro starten.

Du kannst auch Makros am Steuerelement als Private Sub hinterlegen. Gehe dazu in den Entwurfsmodus, aktiviere das Steuerelement und rufe mit der rechten Taste „Code anzeigen“ auf.

Du gelangst jetzt in den Editor. Die erste und letzte Zeile sind bereits vorgegeben. Füge die Codezeilen dazwischen ein. Ein Klick auf einen OptionButton teilt Dir nun über eine MsgBox z.B. mit, ob ein Gast eine Tasse Kaffee oder eine Tasse Tee wünscht.

Private Sub OptionButton1_Click()

If OptionButton1.Value = True Then

MsgBox (“Der Gast wünscht eine Tasse Kaffee!”)

End If

End Sub

Private Sub OptionButton2_Click()

If OptionButton2.Value = True Then

MsgBox (“Der Gast wünscht eine Tasse Tee!”)

End If

End Sub

9b113ea9d5044564ae4b51861c83cb16


Entdecke mehr von Clevercalcul

Subscribe to get the latest posts sent to your email.

2 Gedanken zu „VBA: Das Steuerelement OptionButton“

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

WordPress Cookie Plugin von Real Cookie Banner