Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: ActiveX OptionButton mit Variable ansprechen

ActiveX OptionButton mit Variable ansprechen
21.01.2016 11:16:21
Jens
Hallo,
ich brauche Hilfe bei folgendem Problem:
Ich muss den Wert von ActiveX OptionButtons in einer Tabelle mit Hilfe eines Makros setzen. Dazu verwende ich folgenden Code:
Me.YesButton2.Value = False
Das funktioniert soweit.
Jetzt habe ich aber viele Buttons und will deshalb den Namen mit Hilfe der Variable Button (As Integer) ansprechen. Normalerweise würde ich das so machen:
Me("YesButton" & Button).Value = False
Das funktioniert leider nicht.
Auch folgendes habe ich schon versucht:
Me("YesButton" & CStr(Button)).Value = False
Me(YesButton & CStr(Button)).Value = False
Habe schon unzählige Versuche durch. Was mache ich falsch? Vielen Dank für eure Hilfe!
Grüße
Jens

Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: ActiveX OptionButton mit Variable ansprechen
21.01.2016 12:31:41
Beverly
Hi Jens,
versuche es mal so:
    Me.OLEObjects("YesButton" & Button).Object = False


AW: ActiveX OptionButton mit Variable ansprechen
21.01.2016 12:59:40
Jens
Ich glaube das hat funktioniert. Muss es nochmal durchtesten.

Anzeige
AW: ActiveX OptionButton mit Variable ansprechen
21.01.2016 13:17:54
Jens
Es geht! Vielen Dank! Hab schon Stunden rumprobiert.
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

ActiveX OptionButton mit Variablen ansprechen in Excel


Schritt-für-Schritt-Anleitung

Um den Wert von ActiveX OptionButtons mit einer Variablen anzusprechen, folge diesen Schritten:

  1. Öffne deine Excel-Arbeitsmappe und gehe zum Visual Basic for Applications (VBA) Editor. Das kannst du tun, indem du ALT + F11 drückst.
  2. Füge ein neues Modul hinzu, indem du mit der rechten Maustaste auf "VBAProject" klickst und "Einfügen" > "Modul" auswählst.
  3. Schreibe den folgenden Code in das Modul:
Sub SetOptionButtonValue(Button As Integer)
    Me.OLEObjects("YesButton" & Button).Object.Value = False
End Sub
  1. Rufe die Subroutine auf, indem du die gewünschte Button-Nummer übergibst:
Sub Test()
    SetOptionButtonValue 2 ' Setzt den Wert von YesButton2 auf False
End Sub
  1. Führe das Makro aus, um zu testen, ob der Wert erfolgreich gesetzt wurde.

Häufige Fehler und Lösungen

  • Fehler: "Objekt nicht gefunden"
    Lösung: Stelle sicher, dass die Bezeichnung der OptionButtons genau mit dem im Code angegebenen Namen übereinstimmt.

  • Fehler: "Typen unverträglich"
    Lösung: Überprüfe, ob die Variable Button als Integer deklariert ist, um sicherzustellen, dass die Verkettung im Code korrekt funktioniert.


Alternative Methoden

Eine Alternative zur Verwendung von ActiveX OptionButtons ist die Nutzung von Form-OptionButtons. Diese können ebenfalls mit VBA angesprochen werden, jedoch kann die Syntax variieren. Hier ein Beispiel:

Sub SetFormOptionButtonValue(Button As Integer)
    ActiveSheet.OptionButtons("OptionButton" & Button).Value = False
End Sub

Achte darauf, dass die Form-OptionButtons im entsprechenden Arbeitsblatt vorhanden sind.


Praktische Beispiele

Hier sind einige praktische Beispiele, die du in deinem VBA-Projekt verwenden kannst:

  1. Setzen des Wertes mit einer Schleife:
Sub SetAllOptionButtons()
    Dim i As Integer
    For i = 1 To 5 ' Angenommen, du hast 5 Buttons
        Me.OLEObjects("YesButton" & i).Object.Value = False
    Next i
End Sub
  1. Überprüfen des Status eines Buttons:
Sub CheckOptionButtonStatus(Button As Integer)
    If Me.OLEObjects("YesButton" & Button).Object.Value = True Then
        MsgBox "Button " & Button & " ist aktiviert."
    Else
        MsgBox "Button " & Button & " ist deaktiviert."
    End If
End Sub

Tipps für Profis

  • Verwende optionale Parameter in deinen Subroutinen, um mehr Flexibilität zu ermöglichen.
  • Nutze Error Handling, um besser auf unerwartete Fehler reagieren zu können.
  • Optimiere deine VBA-Code-Leistung, indem du unnötige Berechnungen und Bildschirmaktualisierungen vermeidest.

FAQ: Häufige Fragen

1. Wie kann ich den Wert mehrerer OptionButtons gleichzeitig setzen?
Du kannst eine Schleife verwenden, um die Werte aller OptionButtons in einer bestimmten Gruppe festzulegen. Siehe das Beispiel im Abschnitt "Praktische Beispiele".

2. Funktioniert das auch in Excel 365?
Ja, der oben beschriebene Code funktioniert in Excel 365 sowie in älteren Versionen, solange die ActiveX-Steuerelemente unterstützt werden. Stelle sicher, dass die Entwickleroptionen aktiviert sind.

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