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

VBA Code langsam

VBA Code langsam
16.12.2016 18:05:16
hanked

Hallo Forumsmitglieder,
ich filtere in einer Datei einen Datenbestand, kopiere diesen, öffne eine neue Exceldatei und füge die Filterinhalte ein. Soweit so gut. Funktionierte alles prima. Den Autofilter setzte ich in der 8. Spalte. Dann habe ich das Datenblatt etwas umgestrickt und kann seitehr auf die 8. Spalte verzichten und möchte die erste Spalte filtern. Das habe ich geändert, aber plötzlich dauert der Vorgang ewig. Vorher waren es Sekunden jetzt fast Minuten. Was ist an meinem Code falsch. Problem entsteht beim Einfügen.
Sheets("Daten").Select
ActiveSheet.ListObjects("Einzelposten").Range.AutoFilter Field:=1, Criteria1 _
:=strAdressat
ActiveSheet.AutoFilter.Range.Select
Selection.Copy
Workbooks.Add.Activate
Sheets("Tabelle1").Select
Selection.PasteSpecial Paste:=xlPasteAllUsingSourceTheme, Operation:=xlNone _
, SkipBlanks:=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Hat jemand eine Idee? Vielen Dank!
Gruß
Dirk

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

Betreff
Datum
Anwender
Anzeige
AW: VBA Code langsam
17.12.2016 10:26:57
Gerd L
Hallo Dirk,
geht es so besser?
Sub bbb()
Dim strAdressat As String
strAdressat = "XXX" 'anpassen
With ThisWorkbook.Worksheets("Daten")
.ListObjects("Einzelposten").Range.AutoFilter Field:=1, _
Criteria1:=strAdressat
.AutoFilter.Range.Copy
End With
With Workbooks.Add.Worksheets("Tabelle1")
.Cells(1, 1).PasteSpecial Paste:=xlPasteAllUsingSourceTheme
.Cells(1, 1).PasteSpecial Paste:=xlPasteValues
End With
Application.CutCopyMode = False
End Sub
Gruß Gerd
Ich habe keine Ahnung, …
17.12.2016 13:15:00
RPP63
… dennoch eine Antwort, Dirk!
Dass Du auf .Select und .Activate verzichten solltest, hat Dir ja bereits Gerd geschrieben.
Allerdings sehe ich 'in diesem speziellen Fall' nichts, was das Makro _dermaßen_ verlangsamt.
Vielleicht hilft es, die Berechnung temporär auf manuell zu stellen, was ich mir aber auch nicht vorstellen kann.
Deshalb: hier wäre tatsächlich eine anonymisierte Datei sinnvoll.
Gruß Ralf
Anzeige
AW: Ich habe keine Ahnung, …
20.12.2016 08:16:53
Dirk
Hallo Ralf, hallo Gerd,
vielen Dank! Ich habe mein Makro jetzt auf Hinweis von Gerd etwas geändert - wieder etwas gelernt :-) Den Grund habe ich jetzt gefunden. Ja ja, wie das so ist.... Ich habe eben doch noch etwas weiteres geändert gehabt! Ich habe das Datenblatt zwischenzeitlich als Tabelle definiert, was komischerweise dazu führt, dass fast nichts mehr geht. Als normales Datenblatt läuft es jetzt wieder. Vielen Dank, frohes Fest und guten Rutsch.
Gruß Dirk

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige