Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: VBA: Zwischensp. nach jedem Kopiervorgang löschen

VBA: Zwischensp. nach jedem Kopiervorgang löschen
22.05.2015 22:48:01
Joerschi
Hallo liebes Forum,
ich habe einen VBA-Code, der so aussieht:
Sub Filterhaerte_FUG14er_1()
Application.ScreenUpdating = False
With Sheets("Filtereintrag_aktWo_Wahl")
For i = .Cells(11, 57) To .Cells(11, 58)
.Cells(12, 57) = i
KopiereFilter
.Range("ep1:et6000").Copy
With Sheets("Filtervarianten_14er")
.Cells(2, Columns.Count).End(xlToLeft) _
.Offset(-1, IIf(.Range("a1") = "", 0, 6)).PasteSpecial xlPasteValues
End With
Next i
End With
Application.CutCopyMode = False
Application.Goto Sheets("Filtervarianten_14er").Range("A1"), True
End Sub

Sub KopiereFilter()
With Sheets("Filtereintrag_aktWo_Wahl")
Range("bg12:ct12").Select
ActiveWindow.SmallScroll Down:=-12
Selection.Copy
Range("bg5").Select
Selection.PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _
xlNone, SkipBlanks:=False, Transpose:=False
.Range("cv12").Copy
.Range("et4").PasteSpecial Paste:=xlPasteValuesAndNumberFormats, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=True
.Range("cv12").Copy
.Range("ez4").PasteSpecial Paste:=xlPasteValuesAndNumberFormats, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=True
End With
End Sub
Es werden damit 7 Spalten mit je 6000 Zeilen immer und immer wieder nebeneinander in eine andere Kartei der Datei kopiert.
Allerdings bricht Excel den Vorgang irgendwann ab wegen Speicherüberlastung (irgendwo zwischen 300-400 Kopiervorgängen). Man kann dann nicht mal mehr die Datei speichern ("Ressourcen nicht genug..."). Ich vermute, es liegt am Zwischenspeicher, der irgendwann überfüllt ist und damit alles abwürgt.
An welcher Stelle bzw. welchen Befehl könnte man einfügen, wo nach jedem Kopiervorgang der Zwischenspeicher gelöscht wird?
Danke vorab und beste Grüße
Joerschi

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA: Zwischensp. nach jedem Kopiervorgang löschen
22.05.2015 22:57:47
Luschi
Hallo Joerschi,
mache es so:
    .Range("cv12").Copy
.Range("et4").PasteSpecial Paste:=xlPasteValuesAndNumberFormats, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=True
.Range("cv12").Copy
Application.CutCopyMode = False
.Range("ez4").PasteSpecial Paste:=xlPasteValuesAndNumberFormats, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=True
Application.CutCopyMode = False
Gruß von Luschi
aus klein-Paris

Anzeige
AW: VBA: Zwischensp. nach jedem Kopiervorgang löschen
22.05.2015 23:25:14
Joerschi
Dank Dir Luschi.
Ich probiere es aus und gebe Feedback. Dauert aber bestimmt ein Weilchen - die umfangreichen Kopiervorgänge sind nicht ohne...
Viele Grüße
Joerschi
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige