Moin,
in Excel 2016 habe ich mal testweise zwei Checkboxen hinterlegt. Geplant sind beliebig viele, aber mutlich weniger als 20. (Hardcoden bleibt also möglich)
Mein Vorhaben: Es existiert eine Checkbox, die alle anderen bei Aktivierung "unchecked". Jeder Checkbox ist ein "Hide/Unhide"-Makro zugewiesen, für spezielle Spalten. Diese "Unhide"-Makros sollen beim "uncheck"-Event ausgeführt werden.
Momentan habe ich folgendes realisieren können:
Jede Checkbox wird beim Klick auf "uncheck" entsprechend deaktiviert. Leider auch diejenige, die ich anklicke. Subroutine sieht entsprechend so aus:
(Anmerkung: Ich habe aktuell nur Checkbox1 und Checkbox2)
Es fehlen also noch zwei Eigenschaften:
- Die angeklickte Checkbox muss aktiviert bleiben (if chkBox <> Checkbox2 funktioniert nicht..)
- Das verbundene Makro (unhide) muss ausgeführt werden.
Anbei das Excel-Sheet in einem Zip-Archiv
Anhang anzeigen 4365
(Es sind 7 Makros definiert: Check, Check2, Uncheck, Hide, Unhide, HideRW, UnhideRW, sollten weitere definiert sein, sollte der Datei nicht weiter getraut werden.)
Viele Grüße und vielen Dank für die Hilfe.![Smile :) :)](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
in Excel 2016 habe ich mal testweise zwei Checkboxen hinterlegt. Geplant sind beliebig viele, aber mutlich weniger als 20. (Hardcoden bleibt also möglich)
Mein Vorhaben: Es existiert eine Checkbox, die alle anderen bei Aktivierung "unchecked". Jeder Checkbox ist ein "Hide/Unhide"-Makro zugewiesen, für spezielle Spalten. Diese "Unhide"-Makros sollen beim "uncheck"-Event ausgeführt werden.
Momentan habe ich folgendes realisieren können:
Jede Checkbox wird beim Klick auf "uncheck" entsprechend deaktiviert. Leider auch diejenige, die ich anklicke. Subroutine sieht entsprechend so aus:
(Anmerkung: Ich habe aktuell nur Checkbox1 und Checkbox2)
Code:
Sub Uncheck()
Dim chkBox As Excel.CheckBox
Application.ScreenUpdating = False
For Each chkBox In ActiveSheet.CheckBoxes
If chkBox.Value <> x1Off Then
chkBox.Value = xlOff
End If
Next chkBox
Application.ScreenUpdating = True
End Sub
Es fehlen also noch zwei Eigenschaften:
- Die angeklickte Checkbox muss aktiviert bleiben (if chkBox <> Checkbox2 funktioniert nicht..)
- Das verbundene Makro (unhide) muss ausgeführt werden.
Anbei das Excel-Sheet in einem Zip-Archiv
Anhang anzeigen 4365
(Es sind 7 Makros definiert: Check, Check2, Uncheck, Hide, Unhide, HideRW, UnhideRW, sollten weitere definiert sein, sollte der Datei nicht weiter getraut werden.)
Viele Grüße und vielen Dank für die Hilfe.
Zuletzt bearbeitet: