es ist mir ja fast peinlich, aber mein CheckboxenKrimi ist noch immer nicht gelöst... Ich habe hier schon verschiedene Einzeltips bekommen. Die haben mir immer weitergeholfen... und mich jeweils an die nächste Grenze meines leider nur rudimentären VBA-Wissens geführt. Jetzt muß ich passen und lege das Ganze mal vertrauensvoll in eure Hände...
Im Prinzip geht es um Folgendes (das ist keine Hausaufgabe aus einem Excelkurs, sondern eine Geschichte aus dem Leben der Medienbranche - aber eigentlich ist es nur ein kleines Anzeigeproblem innerhalb einer knapp 17MB großen Arbeitsmappe):
Drei Großbereiche (Spalten) sollen unabhängig voneinander ein- oder ausgeblendet werden können
Drei Unterbereiche zu diesen Großbereichen sollen ebenfalls unabhängig voneinander ein- oder ausgeblendet werden können (in Wirklichkeit sind es zwölf, da kommen schon einige Kombinationen mehr zusammen)
Jeder der Großbereiche beinhaltet alle drei Unterbereiche.
Also etwa so: Drei Bauern Müller, Meier und Lehmann... und jeder von ihnen hat Hühner, Gänse und Enten. - Beispielsweise möchte ich nur Ergebnisse der Bauern Müller und Lehmann sehen. - Oder ich möchte alle Bauern sehen, aber nur ihre Hühnerbestände usw...
(Neben diesen Groß/Unterbereichen liegen im richtigen Leben noch vier andere, aber die sind einfacher zu handeln - je Bereich eine ChBx.)
Insgesamt ist das eine Übersicht, die über mehr als 200 Spalten geht - also fast das ganze Blatt. Daher leuchtet es ein, daß man öfter mal was ein- oder ausblenden muß UND daß die ChBxen dafür immer griffbereit liegen sollten, z.B. in einem senkrechten Block links.
Ich faß euer aller Gehirnschmalz aus den bisherigen Posts nochmal zusammen, um doppelte Gedanken zu vermeiden:
Herbert hatte den Ansatz über Benutzerdef. Ansichten: Das geht nicht, weil die vielen Kombinationen das Handling sprengen würde (abgesehen davon, daß bei mir ausgerechnet in der Datei aus unerfindlichen Gründen die BenutzDefAnsichten grau sind)
Daniel meinte, Formularfelder wären besser - ginge wohl, wäre aber für mich nicht ideal- außerdem scrollen die Dinger weg.
Ramses brachte mich auf die Idee, ein Modul aufzurufen, weil der Code immer der gleiche ist. (Deswegen @mumpel wäre es auch umständlich, den Code in die vielen Klickereignisse zu legen). Hab rumprobiert, ging auch - inzwischen merke ich aber: Ansätze über VBACheckboxen im Blatt haben das gleiche Problem wie Formularboxen dort: Sie rollen ins Nirwana.
Ransi hatte dafür eine Idee, aus dem Scroll eine Art Ereignis zu basteln - hoffe, du findest noch Zeit, das weiter zu tüfteln :-)
Dann hab ich an einer Idee gebastelt, die im Archiv öfter mal diskutiert wurde: Alle Boxen in ein UserForm zu legen, das man dann örtlich fixieren kann. Jogy und Tino gaben Tips, die ich auch umsetzen konnte, solange es sich um EINE ChBox handelte. Als ich nun versuchte, dies in die For-next-Schleifen meiner Originaldatei mit 19 Boxen zu übertragen (wobei 12 davon die o.e. Unterboxen von dreien der restlichen sind), scheiterte ich wieder im Grenzbereich meines VBA-Durchblicks an Syntax-Problemen.
Ich hab die vereinfachte Datei mit 3+3 ChBxen nochmal modifiziert und hochgeladen.
https://www.herber.de/bbs/user/60573.xls
Es gibt also drei Ansätze, die Erfolg versprechen:
1. eine Lösung mit Formular-ChBx, die nicht mehr wegrollen sollen (Daniel)
2. eine Lösung mit VBA-ChBx und dem Scroll-Unterdrücken (ransi)
3. eine UserForm-Lösung
Vielleicht wäre es gut, wenn wirklich zu allen dreien mal eine Lösung gefunden würde. Das Thema "wie fixiert man irgendwelche Objekte" bewegt so viele Gemüter, wie man im Archiv sieht, daß es bestimmt für künftige Frager hilfreich wäre, solch eine umfassende Antwort zu finden, die alles abdeckt.
Euch allen einen schönen Start in die Woche...
Jörg