Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1192to1196
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

Verständnisfrage zum Advanced Filter

Verständnisfrage zum Advanced Filter
KlausF
Hallo Forum,
ich verwende einen Advanced Filter von Sheet 1 auf Sheet 2,
der Ausgangs-Datenbestand umfasst ca 300 Zeilen.
Nun die Frage: ich habe auf Sheet 2 weit unterhalb der gefilterten Daten
eine Datenzeile stehen (Zeile 2000), die ich für Operationen auf Sheet 2 heranziehe.
Nach Beenden des Filtervorgangs ist diese Zeile jedoch immer komplett geleert.
Greift der Adanced Filter beim Kopieren auf die Zielseite immer den ganzen
Seitenbereich ab und löscht dort vorher alles? Ich hatte gedacht, dass immer nur der
Datenbereich benutzt wird. Und wenn ja, lässt sich das per VBA-Befehl umgehen?
Danke vorab
Klaus

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Verständnisfrage zum Advanced Filter
29.12.2010 20:36:43
Gerd
Hallo Klaus!
Wie sieht dein bisheriger Code, hilfsweise deine bisherige Vorgehensweise mit dem Makrorekorder aufgezeichnet, aus?
Gruß Gerd
AW: Verständnisfrage zum Advanced Filter
29.12.2010 21:03:12
KlausF
Hallo Gerd,
es ist ein "ganz normaler" Filtercode.
Variablen setzen (aktives Sheet, letzte Zeile), alten Filterbereich leeren, Filtern.
Sub Listenverwaltung_Filter()
Dim LASTrow As Long
Dim AktSheet As Worksheet
Set AktSheet = ActiveSheet
'Letzte Zeile von Spalte Leitzahl
LASTrow = AktSheet.Range("L1999").End(xlUp).Row
If LASTrow 

Der Bereich "ArchivGesamt" von Sheet "Archiv" wird bei Worksheet Open
ermittelt, übersteigt aber nie mehr als 1999 Zeilen ...
Gruß
Klaus
Anzeige
AW: Verständnisfrage zum Advanced Filter
29.12.2010 21:41:03
Gerd
Hallo Klaus,
dein Code sieht besser aus als bei vielen anderen Fragestellern.
Setze mal zunächst versuchsweise beim Argument "CopyToRange" nur die TopLeft-Zelle, also
AktSheet.Range("K14") ein und den Beginn für "ClearContents" auf K14.
Für den Extremfall sollte der zu Filternde Bereich "ArchivGesamt" mit Überschriften nicht mehr als 1999 - 13 Zeilen haben, da ab Zeile 14 eingesetzt wird.
Gruß Gerd
AW: Verständnisfrage zum Advanced Filter
29.12.2010 22:14:13
KlausF
Hallo Gerd,
Deine Tipps haben zwar nicht angeschlagen, aber sie haben mich auf
eine andere Idee gebracht: ich hatte den Namen "ArchivGesamt"
nicht bis Variable SPAL = FS begrenzt, sondern bis IV durchlaufen
lassen. Dachte, das wäre egal. Nachdem ich das verändert habe
wird nicht mehr gelöscht!
Ich verstehe zwar nicht den Zusammenhang, ist aber nicht so wichtig.
Vielen Dank, denn ohne Deine Hinweise wäre ich nicht darauf gekommen ...
Gruß aus Hamburg
Klaus
Anzeige
Leider zu früh gefreut ...
29.12.2010 22:44:37
KlausF
Hallo Gerd und die anderen,
klappt doch nicht. Ich hatte übersehen, dass gar nicht gefiltert wird.
Ich hab mal eine Datei angefügt.
Vielleicht fällt ja noch Jemandem etwas dazu ein.
https://www.herber.de/bbs/user/72851.zip
Merkwürdig, merkwürdig ...
Klaus
AW: Leider zu früh gefreut ...
30.12.2010 22:07:41
offen
AW: Ganz einfach anderst
30.12.2010 22:34:12
Gerd
Hallo Klaus,
das ist ein Feature des Spezialfilters. Da hilft nur ein Workaround,
die Werte in AktSheet.Range("K2000:K ..) vor dem Filtern in ein Datenfeld schreiben u.
nach dem Filtern wieder einlesen oder in ein drittes Blatt oder einen nicht tangierten Bereich filtern u. die Ergebnisse von dort nach AktSheet.Range("K14") kopieren u. Hilfsblatt oder Hilfsbereich löschen.
Gruß Gerd
Anzeige
AW: Ganz einfach anderst
31.12.2010 20:21:51
KlausF
Hallo Gerd,
danke für die Bestätigung meiner Vermutung.
Ich werde es so machen wie Dein Vorschlag ...
Guten Rutsch nach 2011
Klaus

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige