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

Forumthread: Zeilen ausblenden, wenn eine Bedingung erfüllt ist

Zeilen ausblenden, wenn eine Bedingung erfüllt ist
09.04.2015 15:28:12
Alexander
Hallo zusammen,
Ich habe folgendes Problem:
Im Zelle R13 habe ich ein Dropdownmenü erstellt. Nun möchte ich, wenn ich dort 1 auswähle, also in R13 "1" steht, die Zeilen 24-26 ausblenden, bei "2" die Zeilen 25-26 und bei "3" die Zeile 26.
Leider bin ich ein blutiger VBA-Anfänger und Beispiele aus dem Internet helfen mir auch nicht weiter.
Hat jemand eine Idee wie ich das Problem lösen kann?
Recht herzlichen Dank,
MfG Alexander

Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Event-Macro in Codemodul des Tabellenblattes
09.04.2015 15:54:28
NoNet
Hallo Alexander,
per "Bedingung" (also z.B. als Formel/Funktion) kann man das nicht wirklich realisieren, allerdings ist es möglich, ein Ereignis-Makro (engl.: Event-Macro) im Codemodul des Tabellenblattes zu erstellen :
- Klicke das Tabellenblatt im Blattregister unten per rechte Maustaste an und wähle "Code anzeigen" aus => es öffnet sich das entsprechende Codemodul
- Kopiere folgenden VBA-Code in das Modul :
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, [R13]) Is Nothing Then
Rows("24:26").Hidden = False 'Zuerst alle 3 Zeilen einblenden
Select Case [R13].Value
Case 1: Rows("24:26").Hidden = True
Case 2: Rows("25:26").Hidden = True
Case 3: Rows("26").Hidden = True
End Select
End If
End Sub

- Schließe den VBA-Editor (=> zurück zur Excelmappe)
- Teste das Verhalten nun durch Wertänderung in Zelle R13
Hier nochmal als Screenshot :
Userbild
Hinweis : Die Mappe muss nun als XLSM (oder im alten XLS-Format) gespeichert werden, damit der VBA-Code mit gespeichert wird !
Salut, NoNet

Anzeige
AW: Event-Macro in Codemodul des Tabellenblattes
09.04.2015 16:22:42
Alexander
Vielen Dank! Es funktioniert super wenn ich die Zahlen händisch eingebe, jedoch nicht wenn Sie mittels Index() über das Dropdownmenü automatisch eingefügt werden. Hättest du da auch noch eine Idee?
Grüße, Alex

Per Dropdown automatisch ? Was meinst Du ?
09.04.2015 16:29:54
NoNet
Hallo Alexander,
was meinst Du mit
mittels Index() über das Dropdownmenü automatisch eingefügt werden

Ich ging davon aus, dass es sich bei Deinem "DropDown" über eine Gültigkeitsliste handelt, dann funktioniert der Code ?
Wenn Du die Funktion INDEX() verwendest, findet wohl irgendeine Berechnung zur Wertänderung statt !?!? - Dann könnte stattdessen folgender Code im Codemodul des Tabellenblattes besser passen :
Private Sub Worksheet_Calculate()
Rows("24:26").Hidden = False 'Zuerst alle 3 Zeilen einblenden
Select Case [R13].Value
Case 1: Rows("24:26").Hidden = True
Case 2: Rows("25:26").Hidden = True
Case 3: Rows("26").Hidden = True
End Select
End Sub
Teste das bitte und gib kurz Rückmeldung,
Danke - NoNet
Hast Du Interesse, andere Excel-Begeisterte kennenzulernen ? - Dann komme zum
Exceltreffen 15.-17.05.2015 in Dresden

http://www.exceltreffen.de/index.php?page=248
Anmeldungen sind noch bis 17.04.2015 möglich ! - Schau doch mal rein !

Anzeige
AW: Per Dropdown automatisch ? Was meinst Du ?
10.04.2015 08:57:48
Alexander
Guten Morgen,
also die Auswahl der Eingabe für R13 erfolgt über ein Kombinationsfeld(Formularsteuerelement). Hier sind die Zahlen 1-4 anwählbar.
Mit deinem neuen Code hängt sich das Programm nach Auswahl einer andere Zahl auf.
Grüße, Alex
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

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