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

Excel VBA

Forumthread: Excel VBA

Excel VBA
25.04.2018 21:22:04
Eva
Hallo liebes Forum,
habe in einer Tabelle(Name unterschiedlich)
4 Optionsfelder (ActiveX-Steuerelemt) eingefügt.
Jetzt wäre es toll, wenn das Active Optionsfeld rot wäre und die anderen grau.
Wenn ein anderes Active ist, das rot und das andere wieder grau.
Die Namen der Optionsfelder sind OptionButton 1-4.
Gibt es etwas in VBA um das zu machen?
Lieben Dank schon mal für eure Hilfe.
Liebe grüße EVA
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Excel VBA
26.04.2018 03:19:00
Sandra
Diese Variante funktioniert nur, wenn sich die Optionsbutton auf demselben respektive überhaupt auf einem Tabellenblatt befinden!
Sub Hintergrundfarbe_aendern ()
for i=1 to 4
if ActiveSheet.OLEObjects("OptionButton" & i).Object.value=true then
ActiveSheet.OLEObjects("OptionButton" & i).Object.BackColor = RGB(, , )'roter RGB-Farbwert
elseif ActiveSheet.OLEObjects("OptionButton" & i).Object.value=false then
ActiveSheet.OLEObjects("OptionButton" & i).Object.BackColor = RGB(, , )'grauer RGB-Farbwert
next i
End Sub

Sind diese auf verschiedene Tabellenblätter verteilt, dann funktioniert der obige Code nicht (gilt auch, wenn diese auf einer Userform sind). Der Code darf in der Entwicklungsumgebung nicht (!) in einem Modul stehen, sondern muss zwingend auf dem jeweiligen Tabellenblatt unter "Microsoft Excel Objekte" stehen. Stehen auf einem Tabellenblatt z. B. zwei Active-X-Steuerelemente dann sieht der Code wie folgt aus:
Sub Hintergrundfarbe_aendern ()
if ActiveSheet.OLEObjects("OptionButton1").Object.value=true then
ActiveSheet.OLEObjects("OptionButton1").Object.BackColor = RGB(, , )'roter RGB-Farbwert
ActiveSheet.OLEObjects("OptionButton2").Object.BackColor = RGB(, , )'grauer RGB-Farbwert
elseif ActiveSheet.OLEObjects("OptionButton2").Object.value=false then
ActiveSheet.OLEObjects("OptionButton2").Object.BackColor = RGB(, , )'roter RGB-Farbwert
ActiveSheet.OLEObjects("OptionButton1").Object.BackColor = RGB(, , )'grauer RGB-Farbwert
end if
End Sub

Anzeige
AW: OptionButton Farbwechsel
26.04.2018 12:11:19
Dieter(Drummer)
Guten Tag Eva,
habe hier eine Musterdatei mit deinen Wünschen.
In Tabelle1 sind die Codes hinterlegt, für die OptionButton 1-4.
Mit Klick z.B. auf Button1, wird er rot und die anderen grau. Mit Klick auf die anderen, wird jeweils der geklickte Button rot und die anderen bleiben grau.
Bei schliessen der Datei werden alle Buttons in Tabelle1 ohne Farbe.
Ich habe es nach meinen VBA Möglichkeiten gemacht und sicher geht es von den Spezialisten besser/einfacher/kürzer, aber es funktuioniert.
Gruß, Dieter(Drummer)
Musterdatei: https://www.herber.de/bbs/user/121300.xlsm
Anzeige
Anzeige
Anzeige
Live-Forum - Die aktuellen Beiträge
Datum
Titel
14.05.2026 13:31:09
14.05.2026 09:50:42
13.05.2026 19:14:18