# Excel VBA  - Zellen automatisch ein bzw. Ausblenden



## HairforceOne (8. Juni 2015)

Hallo Leute! 

Ich bin zur Zeit dabei eine Tabelle zu entwerfen, welche aus vielen verschiedenen unterpunkten ist, welche man per Dropdown (Excel 2013 - Datendropdown, keine Steuerelement!)

Es befinden sich in den Feldern A21 - A50 jeweils Daten die man per Dropdown auswählen kann. Und das in 3 verschiedenen Unterpunkten. Nun möchte ich natürlich nicht, wenn man in einem Punkt nur 1 Wert auswählt, die ganzen anderen leeren Zeilen mit angezeigt werden. Was habe ich auch von 29 Leeren zeilen... und das dann mal 3...

Ich habe heute schon getüftelt aber ich komme leider nicht weiter...

Kompakt gesagt möchte ich folgendes:

Die Zeilen 22 - 50 sollen Standardmäßig ausgeblendet sein. - Wenn in dem Feld A21 nun per Dropdown etwas auswähle, soll daraufhin die Zeile 22 erscheinen, um dort die nächste Auswahl zu treffen. Es soll keine Zeile eingefügt werden, sondern einfach eingeblendet. Und das halt so weiter bis zur Zeile 50.

Ich vermute mal das wird sich allerdings etwas mit meiner CheckBox zanken, welche die Zeilen 11 - 150 nur erscheinen lässt, wenn sie angewählt wurde.

Was muss ich tun, damit das alles so funktioniert wie ich mir das vorstelle? Bei Fragen meldet euch am besten einfach! 

Danke und Grüße!


----------



## Scientist (8. Juni 2015)

Ich wuerde es folgendermaßen machen:

Innerhalb eines Change-Events wuerde ich abfragen, ob eine Aenderungen im gewuenschten Bereich stattgefunden hat (mittels intersect).
Wenn dies zutrifft, wuerde ich erst mal den gewuenschten Bereich komplett einblenden (hidden).
Dann die erste leere Zeile im gewuenschten Bereich suchen (hier gibt es mehrere Moeglichkeiten) und anschließend den Bereich, 
der ausblendet werden soll (die gefundene Zeile plus 1 bis zur letzten Zeile) definieren und ausblenden (hidden).


Damit sich das nicht mit deinen Checkboxen beißt:
Steuerelemente markieren -> "Steuerelement formatieren" -> Eigenschaften -> "von Zellposition und -groeße unabhaengig" auswaehlen.
(Jedenfalls in Excel 2010; 2013 habe ich gerade nicht zur Hand, muesste aber aehnlich sein.)

Ich hoffe, dass kommt so in etwa hin ...


----------

