Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1456to1460
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

Autofilter - Ergebnisse kopieren

Autofilter - Ergebnisse kopieren
16.11.2015 10:56:26
Jochen
Hallo liebes Forum,
bisher habe ich immer still und heimlich mitgelesen, doch dieses mal komme ich nicht weiter. Google und die Forumsuche haben mir bisher auch nicht weitergeholfen.
Ich hoffe ihr könnt mir weiterhelfen.
Und zwar habe ich mir eine Datenbasis geschaffen, welche ich mehrmals mittels VBA und Autofilter abfrage. Ich habe mich für den Autofilter entschieden, weil ich gemerkt habe, dass Schleifen die Performance zu stark beeinträchtigen bei der Anzahl an Anfragen.
Ich habe mein Problem bisher so gelöst:

With ws_2
'Kalenderwoche filtern
.Range("A2:I" & lngletzte).AutoFilter Field:=1, Criteria1:=UserForm2.ComboBox1.Text
'Leere Zellen ausblenden
.Range("A2:I" & lngletzte).AutoFilter Field:=8, Criteria1:="", Operator:=xlAnd
'Prozesse kopieren
.Range("H3:H" &.Cells(Rows.Count,8).End(xlUp).Row).SpecialCells(xlCellTypeVisible).Copy
ws_7.Range("D3").PasteSpecial Paste:=xlPasteValues 'Ziel
Application.CutCopyMode = False 'Zwischenspeicher löschen
.ShowAllData
End With
Jetzt zu meiner Frage. Gibt es irgendwie eine Möglichkeit auf Copy/Paste zu verzichten, z.B. mittels .Value? Denn auch hier leidet die Performance sehr, welche dennoch schneller ist als alles mittels Schleife abzufangen.
Vielen Dank für eure Mithilfe.
Beste Grüße
Jochen

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Autofilter - Ergebnisse kopieren
16.11.2015 11:32:52
Daniel
Hi
ein Ziel.Value = Quelle.Value funktioniert nur mit einen rechteckigem und lückenlosen Zellbereich.
damit das in einer gefilterten Tabelle funktioniert, müsstest du die Tabelle vor dem Filtern nach den Filterspalten sortieren, so dass die sichtbaren Zeilen einen lückenlosen, rechteckigen Zellbereich bilden.
Wenn du diese Sortierung vornimmst, müsste aber auch das Copy-Paste deutlich schneller werden. dann würde ich auch das verwenden, weil du hier beim Zielbereich nur die obere linke Zelle angeben musst, während du bei .Value = .Value erst noch die Grösse des gefilterten Bereichs ermitteln musst, weil hier Quell- und Zielbereich gleich gross sein müssen.
Gruß Daniel

Anzeige
AW: Autofilter - Ergebnisse kopieren
16.11.2015 11:48:52
Jochen
Hallo Daniel, das werde ich mal versuchen. Danke
Ich hoffe das sortieren frisst nicht soviel Performance.
Bei Gelegenheit gebe ich Rückmeldung.
Jochen

AW: Autofilter - Ergebnisse kopieren
16.11.2015 12:12:23
Daniel
beim Sortieren ist Excel sehr schnell.
Problematisch wird's nur dann, wenn du noch rechenintensive Formeln hat, die beim Filtern und Sortieren neu berechnet werden.
Da diese Neuberechnung aber oft nicht notwendig ist, kann man dann voher die automatische Neuberechnung der Formeln deaktivieren:
Application.Calculation = xlCalculationManual
und hinterher wieder einschalten
Application.Calculation = xlCalculationAutomatic
Gruß Daniel

Anzeige
AW: Autofilter - Ergebnisse kopieren
16.11.2015 15:15:16
Jochen
Hallo daniel,
also bis jetzt läuft es flüssig. Das mit dem automatisch neu berechnen habe ich schon beachtet. Vielen Dank erstmal und einen schönen Feierabend!

AW: Autofilter - Ergebnisse kopieren
16.11.2015 16:05:12
Jochen
Hallo daniel,
also bis jetzt läuft es flüssig. Das mit dem automatisch neu berechnen habe ich schon beachtet. Vielen Dank erstmal und einen schönen Feierabend!

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige