Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Optionbutton True abfragen

Forumthread: Optionbutton True abfragen

Optionbutton True abfragen
21.09.2003 12:01:49
Vedat
Hallo Vba profis

Ich habe auf einer Userform auf mehrere Frams mehrere Optionbuttons. Ich möchte gern eine Abfrage durchführen, der Alle optionbutton durchgeht und mir die Werte ausgibt. Leider habe ich nicht geschafft :(
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Optionbutton True abfragen
21.09.2003 12:35:05
Ramses
Hallo


Private Sub CommandButton6_Click()
'Achtung
'Vergleich scheint Case Sensitiv zu sein !!
'Optionbutton wird nicht erkannt
'OptionButton dagegen schon
Dim i As Integer
Dim cb As Control
i = 0
For Each cb In Me.Controls
    If TypeName(cb) = "OptionButton" Then
        If cb.Value = True Then
            i = i + 1
        End If
    End If
Next
MsgBox "Optionbutton: " & i & " mit WAHR"
End Sub 
     Code eingefügt mit Syntaxhighlighter 1.16




Gruss Rainer
Anzeige
AW: Optionbutton True abfragen
21.09.2003 12:47:49
Vedat
Danke Ramses

Dein Code hat mir geholfen, aber wie kann ich alle "Optionbutton.Caption" die True sind aufuliesten. Weil ich dann die Werte ins Excel übertragen muss. Danke im Voraus
AW: Optionbutton True abfragen
21.09.2003 13:05:46
Ramses
Hallo

z.B. mit

If cb.Value = True Then
x = cb.Caption
End If

zum übertragen, das wird wohl die nächste Frage sein :-(,

If cb.Value = True Then
Worksheets("Tabelle1").Range("A" & Range("A65536").End(xlup).Row +1 ) = cb.Caption
End If

Gruss Rainer
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige

Infobox / Tutorial

Optionbutton True abfragen in Excel VBA


Schritt-für-Schritt-Anleitung

  1. Öffne den VBA-Editor: Drücke ALT + F11 in Excel, um den VBA-Editor zu öffnen.

  2. Füge eine Userform hinzu: Klicke auf Einfügen > UserForm, um eine neue Userform zu erstellen.

  3. Füge OptionButtons hinzu: Ziehe mehrere OptionButtons aus der Toolbox auf die Userform.

  4. Füge einen CommandButton hinzu: Platziere einen CommandButton auf der Userform, um die Abfrage auszulösen.

  5. Code für die Abfrage: Doppelklicke auf den CommandButton und füge den folgenden Code ein:

    Private Sub CommandButton1_Click()
       Dim i As Integer
       Dim cb As Control
       i = 0
       For Each cb In Me.Controls
           If TypeName(cb) = "OptionButton" Then
               If cb.Value = True Then
                   i = i + 1
                   ' Hier kannst du den Code hinzufügen, um die Caption zu speichern
               End If
           End If
       Next
       MsgBox "Optionbutton: " & i & " mit WAHR"
    End Sub
  6. OptionButton-Captions abfragen: Um die Captions der OptionButtons, die True sind, aufzulisten, kannst du den Code wie folgt erweitern:

    Dim x As String
    If cb.Value = True Then
       x = cb.Caption
       ' Hier kannst du den Code hinzufügen, um x weiterzuverarbeiten
    End If

Häufige Fehler und Lösungen

  • Fehler: OptionButton wird nicht erkannt.

    • Lösung: Stelle sicher, dass du den richtigen Typ mit TypeName(cb) überprüfst.
  • Fehler: MsgBox zeigt immer 0 an.

    • Lösung: Überprüfe, ob die OptionButtons tatsächlich auf True gesetzt sind und dass der Code im richtigen Kontext ausgeführt wird.

Alternative Methoden

Wenn du die Excel VBA OptionButtons abfragen möchtest, kannst du auch folgende Ansätze nutzen:

  • Direkte Zellreferenz: Anstatt die Werte in einer MsgBox anzuzeigen, kannst du die Werte direkt in eine Excel-Tabelle übertragen:

    If cb.Value = True Then
       Worksheets("Tabelle1").Range("A" & Range("A65536").End(xlUp).Row + 1).Value = cb.Caption
    End If
  • Verwendung von Arrays: Speichere die Captions in einem Array und arbeite anschließend mit diesem Array weiter.


Praktische Beispiele

Hier ein einfaches Beispiel für einen Userform mit drei OptionButtons:

  1. Erstelle eine Userform mit drei OptionButtons (OptionButton1, OptionButton2, OptionButton3) und einem CommandButton (CommandButton1).
  2. Füge den folgenden Code in den CommandButton ein:

    Private Sub CommandButton1_Click()
       Dim cb As Control
       For Each cb In Me.Controls
           If TypeName(cb) = "OptionButton" Then
               If cb.Value = True Then
                   MsgBox "Ausgewählt: " & cb.Caption
               End If
           End If
       Next
    End Sub

Dieses Beispiel zeigt, wie du die Auswahl der OptionButtons abfragen und ausgeben kannst.


Tipps für Profis

  • Verwende Arrays für die Sammlung: Wenn du viele OptionButtons hast, speichere die Captions in einem Array, um die Verarbeitung zu beschleunigen.
  • Verwende Enumerationen: Mach deinen Code lesbarer, indem du Enumerationen für die OptionButton-Werte verwendest.
  • Gestalte UserForms ansprechend: Achte auf ein benutzerfreundliches Design, um die Interaktion mit den OptionButtons zu verbessern.

FAQ: Häufige Fragen

1. Wie kann ich den Wert eines OptionButtons abfragen?
Du kannst den Wert eines OptionButtons abfragen, indem du die Value-Eigenschaft des OptionButtons überprüfst. Beispiel: If OptionButton1.Value = True Then.

2. Kann ich mehrere OptionButtons gleichzeitig abfragen?
Ja, du kannst eine Schleife verwenden, um alle OptionButtons in deiner Userform zu durchlaufen und deren Werte abzufragen.

3. Wie übertrage ich die Werte in eine Excel-Tabelle?
Verwende Worksheets("Tabelle1").Range("A1").Value = cb.Caption, um die Caption des OptionButtons in eine Zelle zu übertragen, während du die Schleife durchläufst.

4. Was tun, wenn mein Code nicht funktioniert?
Überprüfe die Syntax und stelle sicher, dass du den Code im richtigen Kontext (z.B. im Click-Ereignis des CommandButtons) einfügst.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige