Optionsfeld in Excel VBA
In this Article
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:
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:
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:
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.
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.
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:
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:
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:
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!Learn More!