Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Zeilen aus- / einblenden

Zeilen aus- / einblenden
11.09.2008 18:24:56
Thomas
Hallo,
ich möchte folgendes machen:
Entprechend dem Wert im Feld B3 sollen verschieden Zeilen ein- bzw. aus-geblendet werden.
Steht zum Beispiel im Feld B3 der Wert 1 sollen die Zeilen "B7:B15" ausgeblendet werden
Steht im Feld B3 der Wet 2 sollen die Zeilen "B8:B15" ausgeblendet werden
Steht im Feld B3 der wert 3 sollen die Zeilen "B9:B15" ausgeblendet werden.
usw...
ich habe folgendes Macro für den Wert 1 der auch funktioniert

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Range("B3").Value = 1 Then
Rows("7:15").Hidden = True
Else
Rows("7:15").Hidden = False
End If
End Sub


Füge ich nun zwischen End If und End Sub

den If Befehl für den Wert 2 ein, funktioniert dieser, aber dafür funktioniert die Sache mit dem Wert 1 nicht mehr.
Es funktioniert immer nur der unterste If Befehl. Die davorhergehenden nicht mehr.
Was kann ich machen?

Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeilen aus- / einblenden
11.09.2008 18:29:00
Hajo_Zi
Hallo Thomas,
das geht kürzer
Rows("7:15").Hidden =Range("B3").Value = 1
Rows("8:15").Hidden =Range("B3").Value = 2

AW: Zeilen aus- / einblenden
11.09.2008 18:51:54
Thomas
Dank Hajo,
ist kürzer, aber es funktioniert immer nur die unterste Funktion.
Bei
Rows("7:15").Hidden =Range("B3").Value = 1
Rows("8:15").Hidden =Range("B3").Value = 2

werden die Zeilen korrekt bei Wert 2 in B3 ausgeblendet, Bei Wert 1 passiert nichts.
Bei
Rows("7:15").Hidden = Range("B3").Value = 1
Rows("8:15").Hidden = Range("B3").Value = 2
Rows("9:15").Hidden = Range("B3").Value = 3

werden die Zeilen korrekt bei Wert 3 in B3 ausgeblendet, Bei Wert 1 und 2 passiert nichts
Anzeige
AW: Zeilen aus- / einblenden
11.09.2008 19:11:23
Hajo_Zi
Hallo Thomas,
jetzt mit Testung.

Rows("7:15").Hidden = False
Select Case Range("B1")
Case 1, 2, 3
Rows(6 + Range("b1") & ":15").Hidden = True
Case Else
Rows("7:15").Hidden = False
End Select


Gruß Hajo

Anzeige
AW: Zeilen aus- / einblenden
11.09.2008 19:17:24
Thomas
Einwandfrei, vielen Dank Hajo
AW: Zeilen aus- / einblenden
11.09.2008 19:27:00
Hajo_Zi
Hallo Thomas,
der Teil
Case Else
Rows("7:15").Hidden = False
kann entfallen das ist noch ein Rest von der Testung
Gruß Hajo
AW: Zeilen aus- / einblenden
11.09.2008 19:52:50
Erich
Hallo Thomas,
das "usw..." in deinem ersten Beitrag hat mich noch mal rumprobieren lassen.
Muss es eigentlich Worksheet_SelectionChange sein? Worksheet_Change reicht meist aus.
Hier mal beide Varianten, die beide auf Eingaben einer Zahl von 0 bis 9 reagieren:

Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Cells(3, 2)) Is Nothing Then Exit Sub
If Cells(3, 2)  9 Then Exit Sub
Rows("6:14").Hidden = False
Rows(6 + Cells(3, 2)).Resize(10 - Cells(3, 2)).Hidden = True
End Sub
Private Sub xxxWorksheet_SelectionChange(ByVal Target As Range)
If Cells(3, 2)  9 Then Exit Sub
Rows("6:14").Hidden = False
Rows(6 + Cells(3, 2)).Resize(10 - Cells(3, 2)).Hidden = True
End Sub

Durch das "xxx" am Anfang von xxxWorksheet_SelectionChange ist dieses Ereignis erst mal deaktiviert.
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort

Anzeige
AW: Zeilen aus- / einblenden
11.09.2008 20:39:00
Thomas
Danke, ist sogar noch besser,
so kann man irgendeinen Wert in den Code geben z.B

> 10

oder


> 99

oder wie auch immer, ohne die ganze Zahlenpalette angeben zu müssen.
Ich habe schon so viel versucht und ewig daran rumgefummelt und nun habe ich gleich 2 verschieden Lösungen von Euch. Vielen Dank
Ich habe es jetzt so:


Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Cells(3, 2)) Is Nothing Then Exit Sub
If Cells(3, 2)  10 Then Exit Sub
Rows("6:15").Hidden = False
Rows(6 + Cells(3, 2)).Resize(11 - Cells(3, 2)).Hidden = True
End Sub
Private Sub xxxxWorksheet_SelectionChange(ByVal Target As Range)
If Cells(3, 2)  10 Then Exit Sub
Rows("6:15").Hidden = False
Rows(6 + Cells(3, 2)).Resize(10 - Cells(3, 2)).Hidden = True
End Sub


Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
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