Excel2003: Frage zu Autofilter & ausgeblendete Zeilen

16/02/2008 - 22:50 von Erich Jung | Report spam
Hallo und schönen guten Abend zu spàter Stunde,

ich knoble mal wieder an einem VBA-Problem und finde auch im Forum keine
Lösung dazu.
Vielleicht hat jemand eine Idee wie ich mein Problem lössen kann.

Also ich habe in einer Tabelle in Spalte A-K und in den Zeilen 5-30 Daten
eingetragen.
Bei eingeschalteten Autofilter filtere ich mittels VBA mit mehreren
Command_Buttons
auf unterschiedliche Kriterien (2). Mit einem weiteren Command-Button
(Makro) setze ich
den Autofilter wieder auf "Alle". Das funktioniert auch ganz gut.

Jetzt möchte ich aber "vor" der Filterung mit den Autofilter-Kriterien
bestimmte Zeilen ausblenden
und dann erst mit den Autofilter-Kriterien filtern "OHNE dass das Filter
auf die Daten der ausgeblendeten
Zeilen zugreift und dass auch wenn im Autofilter wieder auf "Alle" gedrückt
wird die ausgeblendeten Zeilen
ausgeblendet bleiben.

Hoffe ich habe es einigermaßen verstàndlich beschrieben und es hat jemand im
Forum einen Rat ob man dies
per VBA umsetzen kann.

Noch ein schönes Wochenende
und Gruß Erich
 

Lesen sie die antworten

#1 Thomas Unruh
17/02/2008 - 10:21 | Warnen spam
Moin Erich!

Erich Jung schrieb:


Jetzt möchte ich aber "vor" der Filterung mit den Autofilter-Kriterien
bestimmte Zeilen ausblenden
und dann erst mit den Autofilter-Kriterien filtern "OHNE dass das Filter
auf die Daten der ausgeblendeten
Zeilen zugreift und dass auch wenn im Autofilter wieder auf "Alle" gedrückt
wird die ausgeblendeten Zeilen
ausgeblendet bleiben.




Was mir als nicht Profi in Excel dazu einfàllt, ist eine Hilfsspalte
und dann über diese die Anzeige steuern (Change Event)

Wenn das nicht reicht würde ich über die Hilfspalte und dem
Change-Event, die Daten in ein anderes Blatt kopieren.

Ist nur so eine Idee. Würde aber klappen.

z.B.
Private Sub Worksheet_Change(ByVal Target As Range)
'Errorhandling aktivieren, um im Falle eines Fehlers die Ereignisse
'am Ende wieder zu aktivieren
On Error GoTo ErrorHandler

'Ereignisse ausschalten, um das Change-Ereignis nicht erneut
auszulösen
Application.EnableEvents = False

Call Ausblenden

ErrorHandler:
Application.EnableEvents = True 'Ereignisse wieder einschalten

End Sub
Sub Ausblenden()

' Hier den zu untersuchenden angeben
Bereich = "E5:E20"

For Each zelle In Range(Bereich)

If zelle.Value = "x" Then
Beep
Rows(zelle.Row).Hidden = True
End If

Next zelle
End Sub

Gruß
Thomas

Ähnliche fragen