Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1364to1368
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Zeilen per VBA einblenden/ausblenden

Zeilen per VBA einblenden/ausblenden
24.06.2014 08:28:17
Markus
Hallo,
ich habe hier aus dem Forum einen Codesnippsel genommen und das Makro erweitert.
Hier wird per Dropdown etwas ausgewählt. Abhängig der Zahl werden Zeilen eingeblendet und ander ausgeblendet:
Sub Makro10()
Dim i As Double
For i = 10 To 11
If Cells(4, 6) = 1 Then
Rows(i).Hidden = False
Else
Rows(i).Hidden = True
End If
Next
For i = 12 To 13
If Cells(4, 6) = 2 Then
Rows(i).Hidden = False
Else
Rows(i).Hidden = True
End If
Next
For i = 14 To 15
If Cells(4, 6) = 3 Then
Rows(i).Hidden = False
Else
Rows(i).Hidden = True
End If
Next
End Sub
Nun möchte ich gerne das Ganze etwas Flexibler gestalten. Und zwar soll, wenn z.B. per Dropdown "Test 1" ausgewählt wird (Zahl 1), sollen alle Zeilen eingeplendet werden ab der Zeile wo "Test 1" steht, bis z.B. der Zeile wo "Test 1 Ende" steht.
"Test 1" kann jedoch mehrmals vorkommen. In dem Fall sollen auch die mehrfach vorkommenden Zeilen eingeblendet werden.
Wie könnte ich das elegant lösen? :-)
Viele Grüße
Markus

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeilen per VBA einblenden/ausblenden
24.06.2014 08:37:05
Raphael
Hallo Markus,
warum nutzt du nicht einfach den Autofilter dafür?
Gruess
Raphael

AW: Zeilen per VBA einblenden/ausblenden
24.06.2014 08:40:02
Beverly
Hi markus,
Sub Ausblenden()
Dim lngZeile As Long
For lngZeile = 1 To 20
Cells(lngZeile, 3).EntireRow.Hidden = False = InStr(Cells(lngZeile, 3), "Test 1") > 0
Next lngZeile
End Sub


AW: Zeilen per VBA einblenden/ausblenden
24.06.2014 09:01:45
Raphael
Hallo Markus,
alternativ zu Karins Lösung
Sub FilterSetzen()
'Prüfen ob Autofilter aktiv ist
Application.ScreenUpdating = False
With ActiveSheet
If .AutoFilterMode = False Then .Range("A1").AutoFilter
'alle bestehenden Filter entfernen
.ShowAllData
'Filterkriterum aus Zelle lesen
.Range("A1").AutoFilter Field:=1, Criteria1:=.Cells(1, 6).Value
End With
Application.ScreenUpdating = True
End Sub
Gruess
Raphael
Anzeige

87 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige