Rückkehr in VBA-Code-Beispiele

Optionsfeld in Excel VBA

In VBA können Sie ein Optionsfeld erstellen, mit dem der Benutzer eine Optionen aus mehreren wählen kann. Ein Optionsfeld wird häufig in Benutzerformularen verwendet, kann aber auch in einem Arbeitsblatt eingesetzt werden. In diesem Tutorial lernen Sie, wie Sie ein Optionsfeld erstellen, eine Benutzerauswahl in VBA abrufen und diese im Code verwenden.

Wenn Sie lernen möchten, wie Sie ein Kontrollkästchen erstellen, klicken Sie hier: VBA Kontrollkästchen

Ein Optionsfeld erstellen

Um ein Optionsfeld in das Arbeitsblatt einzufügen, müssen Sie auf die Registerkarte Entwicklertools gehen. Danach Klicken Sie auf Einfügen und wählen Sie das Optionsfeld unter ActiveX-Steuerelemente:

vba optionsfeld einfuegen

Abbildung 1. Einfügen eines Optionsfeldes in das Arbeitsblatt

 

Wenn Sie das eingefügte Optionsfeld auswählen, können Sie auf der Registerkarte Entwicklertools auf Eigenschaften klicken:

vba optionsfeld eigenschaften

Abbildung 2. Optionsfeldeigenschaften ändern

 

Hier können Sie verschiedene Eigenschaften des Optionsfeldes festlegen. Für den Anfang haben wir das Attribut Name in optOptionsfeld1 geändert. Jetzt können wir das Optionsfeld mit diesem Namen im VBA-Code verwenden.

Außerdem haben wir den Text, der neben dem Optionsfeld erscheint, in „Männlich“ geändert. Dazu müssen Sie das Attribut Caption festlegen.

Da wir dem Benutzer die Möglichkeit geben wollen, das Geschlecht auszuwählen, wiederholen wir den gesamten Vorgang für ein weiteres Optionsfeld. Das zweite hat den Namen optOptionsfeld2, während seine Beschriftung „Weiblich“ lautet. Sie können auch ein neues Optionsfeld erstellen, indem Sie das vorhandene kopieren und dessen Eigenschaften ändern. Jetzt hat unser Arbeitsblatt zwei Optionsfelder:

vba weiteres optionsfeld einfuegen

Abbildung 3. Einfügen des zweiten Optionsfeldes

Ein ausgewähltes Optionsfeld in VBA ermitteln

Der Zweck eines Optionsfeldes besteht darin, die Entscheidung eines Benutzers zu erhalten. Im Beispiel wird gezeigt, wie in die Zelle C3 „Männlich“ geschrieben wird, wenn das Optionsfeld 1 gewählt wird, oder „Weiblich“, wenn das zweite gewählt wird. Jedes Optionsfeld hat ein Ereignis, das ausgelöst wird, wenn es ausgewählt wird (Click).

Daher müssen wir für das erste Optionsfeld den folgenden Code in das Ereignis Click des Objekts optOptionsfeld1 einfügen:

Private Sub optOptionsfeld1_Click()

     If Tabelle1.optOptionsfeld1.Value = True Then

         Tabelle1.Range("C3") = "Männlich"

     End If

End Sub

In ähnlicher Weise werden wir diesen Code in das Ereignis Click des Objekts optOptionsfeld2 einfügen:

Private Sub optOptionsfeld2_Click()

     If Tabelle1.optOptionsfeld2.Value = True Then

         Tabelle1.Range("C3") = "Weiblich"

     End If

End Sub

Der Wert des Optionsfeldes steht im Attribut Value des Objekts optOptionButton1 oder optOptionButton2. Der Wert der Optionsfeldes lautet True, wenn es ausgewählt wurde, oder False, wenn es nicht ausgewählt wurde.

vba optionsfeld maennlich

Abbildung 3. Gibt „Männlich“ zurück, wenn das erste Optionsfeld gewählt wird

 

Wie Sie in Abbildung 3 sehen können, haben wir auf das erste Optionsfeld geklickt. Daher lautet der Wert von Tabelle1.optOptionsfeld1.Value True, so dass das Ergebnis in C3 „Männlich“ entspricht.

vba optionsfeld weiblich

Abbildung 4. Gibt „Weiblich“ zurück, wenn das zweite Optionsfeld gewählt wird

 

Ähnlich wie im vorherigen Beispiel wird der Wert von C3 in „Weiblich“ geändert, da wir das zweite Optionsfeld gewählt haben. In diesem Fall wird die Prozedur optOptionsfeld2_Click() ausgelöst.

Verwendung eines Optionsfeldes in einem Benutzerformular

Wie bereits erwähnt, werden Optionsfelder am häufigsten in Benutzerformularen verwendet. Um zu erklären, wie Sie das machen können, fügen wir zunächst ein Benutzerformular ein. Klicken Sie im VBA-Editor mit der rechten Maustaste auf den Modulnamen, klicken Sie auf Einfügen und wählen Sie UserForm:

vba optionsfeld benutzerformular hinzufuegen

Abbildung 5. Einfügen eines Benutzerformulars

 

Um die Steuerelemente zum Einfügen anzuzeigen, müssen Sie die Toolsammlung aktivieren. Klicken Sie dazu auf das Symbol Toolsammlung in der Symbolleiste. Daraufhin wird ein Fenster mit allen verfügbaren Steuerelementen angezeigt. Sie können auf die Schaltfläche Optionsfeld klicken, um es im Benutzerformular zu generieren:

optionsfeld in benutzerformular einfuegen

Abbildung 6. Einfügen eines Optionsfeldes in das Benutzerformular

 

Im Eigenschaftenfenster ändern wir den Namen des Optionsfeldes in optOptionsfeld1 und die Beschriftung in Männlich. In ähnlicher Weise haben wir eine weiteres Optionsfeld für Weiblich erstellt. Wenn wir das Benutzerformular ausführen, erhalten wir zwei Optionsfelder:

benutzerformular mit zwei opntionsfeldern

Abbildung 7. Zwei Optionsfelder im Benutzerformular

 

Wenn Sie ein ausgewähltes Optionsfeld ermitteln möchten, müssen Sie die gleiche Logik wie bei einem Arbeitsblatt verwenden. Diese wird weiter oben in diesem Artikel erläutert.

VBA Coding Made Easy

Stop searching for VBA code online. Learn more about AutoMacro - A VBA Code Builder that allows beginners to code procedures from scratch with minimal coding knowledge and with many time-saving features for all users! vba save as


Learn More!