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

"not enough system resources..." bei Kopiervorgang

"not enough system resources..." bei Kopiervorgang
pbaer007
Hallo VBA-Gemeinde,
ich suche nach der Ursache für die Meldung "not enough system resources to display completely",
welche bei einem Macro, welches Daten von einem Blatt auf ein anderes kopiert, am Ende erscheint.
Das Macro wird von zwei unterschiedlichen Blättern aus genutzt,
einmal von Blatt 12-2012 (3) und kopiert von 12-2012 (1) (ohne Meldung)
einmal von Blatt 01-2013 und kopiert von 12-2012 (2) (mit Meldung)
Das Macro läuft aber vollständig durch.
Nach Bestätigen der Meldung und einmal hoch/runter scrollen ist sie auch weg.
Die beiden Kopiervorgänge stehen nicht im Zusammenhang.
Die zu kopierenden Bereiche der jeweiligen Blätter sind identisch vom Aufbau.
Es werden immer Bereiche von "C bis R" kopiert, wobei nur in Spalte "Q" eine kleine Formel
Q## = P## * $B$4 mit übernommen wird.
Die Meldung kommt schon bei einer kleinen Anzahl von Zeilen (im Testlauf sind es nicht einmal 50).
Kann mir jemand einen Tip geben, wie ich der Sache auf den Grund gehen kann?
Vielen Dank & viele Grüße
Gert

AW: "not enough system resources..." bei Kopiervorgang
08.09.2012 17:22:20
Matze,Matthias
Hallo pbaer007,
deine Code Zeilen bzw. das Makro hier zu posten wäre Sinnvoll, lasse offen für weitere bearbeitungen.
Gruß Matze

AW: "not enough system resources..." bei Kopiervorgang
08.09.2012 18:02:42
pbaer007
Hallo Matze,
der Code ist etwas länger, da hab ich den ganzen File hinterlegt:
https://www.herber.de/bbs/user/81763.zip
Startet man die fragliche Funktion vom Tab "Total 12-" funktioniert es.
Jedoch von "Total 01-" aufgerufen, kommt die Fehlermeldung.
Vielen Dank schon einmal für die Unterstützung
Gert

AW: "not enough system resources..." bei Kopiervorgang
09.09.2012 11:32:36
Luschi
Hallo Gert,
habe mal die Makros ein bischen getestet. Mit Excel 2003 SP3 & Excel 2007 SP3 laufen sie in allen beiden Sheets ohne Fehlermeldung durch.
Mit Excel 2010 SP1 hatte ich beim Sheet ''Total 01-' die selbe Fehlermeldung. Die kommt aber erst, wenn alle Vba-Codezeilen schon abgearbeitet sind - also nach dem letzten End Sub.
Habe folgende Experimente gemacht, was alles aber nicht geholfen hat:
- Datei mit Excel 2003 / 2007 geöffnet /gespeichert
- ALLE Makros in ein Extra-Verzeichnis exportiert, in der Exceldatei die Makros gelöscht, gespeicht , Makros neu importiert (auch die Tabellen-Klassenmodule und Formulare falls vorhanden).
- das ist eigentlich immer meine Geheimwaffe, wenn es klemmt - aber Pustekuchen.
Letztendlich hatte ich mit Folgendem Erfolg:

Sub mcr_ChooseMcr()
Dim varWShChkNa As String, varFileNa1 As String
Dim varERD00 As Integer
getMoreSpeed True
varERD00 = Cells(Rows.Count, 11).End(xlUp).Row
varWShChkNa = ActiveSheet.Name
varFileNa1 = ActiveWorkbook.Name
Select Case varERD00
Case 30
Call mcr_CreateSumTab(varWShChkNa)   'M05
Case Else
Call mcr_CreateCCS(varFileNa1)       'M01
End Select
getMoreSpeed False
End Sub
Sub getMoreSpeed(bDoIt As Boolean)
Application.ScreenUpdating = Not (bDoIt)
Application.EnableEvents = Not (bDoIt)
Application.Calculation = IIf(bDoIt, xlCalculationManual, xlCalculationAutomatic)
Application.Cursor = IIf(bDoIt, 2, -4143)
End Sub
Also zu Beginn alle Excel-Geschwindigkeitsbremsen deaktivieren und erst am Schluß wieder einschalten.
Gruß von Luschi
aus klein-Paris

Anzeige
AW: "not enough system resources..." bei Kopiervorgang
09.09.2012 14:31:18
fcs
Hallo Luschi, Hallo Matze,
ich hab unter Excel 2010 getestet.
Resultat wie von Matze beschrieben.
Ich hab dann auch Richtung Events gesucht - es gibt aber keine in der Datei.
Ich hab dann auch noch mal in die Richtung gearbeitet, weitestgehend ohne Selection und Activate auszukommen. Das umzusetzen ist bei den Makros aber relativ mühselig.
Das schien zu funktionieren - aber nur mit Excel im Minimalbetrieb. Sobald mehrere Dateien geöffnet waren, kam die Meldung wieder. Excel ist ja leider zu blöd uns mitzuteilen welche spezifische Zone seiner Speicher den Platzprobleme hat.
Ich hab das Makro "Sub mcr_CreateSumTab(varWShChkNa)" dann mal von hinter her reduziert.
Ohne Erfolg.
Dann hab ich die Bildschirm-Aktualisierung am Ende des Makros vor das Setzen des Autofilters verschoben.
' set Auto-Filter Range
Application.ScreenUpdating = True
varERD01 = Cells(Rows.Count, 13).End(xlUp).Row
Range("C30:O" & varERD01).AutoFilter
Range("B32").Select
End Sub
Das schien zu funktionieren (Warum auch immer?)
Aber dann die Ernüchterung: Jetzt kam gelegentlich die Fehlermeldung schon beim Öffnen oder Speichern der per Makro modifizierten Datei!!!! Das ganze scheint auch noch davon abzuhängen, wieviele Dateien man in der aktuellen Excel-Session schon bearbeitet oder gerade geöffnet hat. Mit neu gestartetem Excel trat der Fehler nicht auf.
In deiner Datei muss irgendein kritischer Wert für Excelanwendung, Exceldateien oder Tabellenblätter nah am Maximum sein.
Dieser wird dann irgendwann bei weiteren Arbeiten überschritten. Warum mit dem Januarblatt ja und mit dem Dezemberblatt noch nicht?
Du verwendest in deinen Tabellenblättern relativ viele verschiedene Zellformatierungen.
- Füll-Farben
- Schriftfarben
- Rahmenlinien mit/ohne/fett/dünn/doppelt etc
- Fett/nicht fett
- Textausrichtung
Möglicher Weise ist das die Ursache für die Fehlermeldungen.
Evtl. muss du die Formatierungen etwas vereinfachen.
Gruß
Franz

Anzeige
AW: "not enough system resources..." bei Kopiervorgang
09.09.2012 15:36:41
pbaer007
Hallo Luschi,
schön, dass Du damit Erfolg hattest...
"mein Excel" will trotzdem mit mir sprechen.
Soll heißen, habe den "Speeder" eingebaut, aber behalte trotzdem die Meldung im Januar.
Kann es evtl. auch an der Hardware liegen?
ABER auf alle Fälle vielen Dank für den Input und die Experimente zur Problemlokalisierung.
Viele Grüße aus B
Gert

unglaubliche Lösung..... ** Danke
09.09.2012 15:45:27
pbaer007
Hallo Luschi und Franz,
dank eurer Ansätze hab ich nun im "mcr_CreateSumTab" das erste "Screenupdating" auf true gelassen.
Und siehe da, schon ist die Meldung weg. /Excel kann sich wohl doch nicht so viel merken ;-)
Jetzt bekommt zwar der User 'n eptileptisches Augenzucken,
aber das werd ich jetzt in kleinen Schritten "weg-falsen".
Also vielen Dank, ihr habt mich auf den richtigen Weg gebracht.
Dann wünsch ich noch einen schönen Sonntag.
Gert

Anzeige
AW: unglaubliche Lösung..... ** Danke
09.09.2012 17:23:06
fcs
Hallo Gert,
Jetzt bekommt zwar der User 'n eptileptisches Augenzucken,
aber das werd ich jetzt in kleinen Schritten "weg-falsen".

Das kann man weitestgehend verhindern, indem man mit Objektvariablen für die Tabellenblätter und Ranges arbeitet und dabei im Code auf ".Select", "Selection... ." und ".Activate" verzichtet.
Ich hatte das ja im Ansatz ja schon probiert umzusetzen.
Hier jetzt die Textdateien mit angepasstem Code für die 3 Module:
M05... : https://www.herber.de/bbs/user/81769.txt
M06... : https://www.herber.de/bbs/user/81770.txt
M07... : https://www.herber.de/bbs/user/81771.txt
Gruß
Franz

Anzeige
AW: WOW: VIELEN DANK
10.09.2012 11:17:14
pbaer007
Hi Franz,
vielen Dank für die Arbeit und Zusendung der Codes.
Ich kann leider erst heute Abend mit Hirn an die Sache gehen.
Hab aber schon mal drüber geschaut und die Lösung für das Hin- und Herspringen gesehen.
Das war nämlich mein Problem, dass ich beim Einfügen & Kopieren der Zeilen hatte.
Aber man lernt nur auf diesem Weg langsam dazu, Fehler / ungünstige Programmierung und
das Aufzeigen von besseren Lösungswegen.
VIELEN, VIELEN DANK
Gert

Funktioniert! Vielen DANK
10.09.2012 20:02:32
pbaer007
Hallo Franz,
hab deine Codes brav abgeschrieben.
Da steckte wirklich 'ne Menge Zeit in deinen Änderungen - Danke.
Hab eine ganze Menge mitgenommen.
Wird sich sicherlich auf zukünftige Projekte positiv auswirken.
Nochmals danke für diese geniale Unterstützung!
Gert

Anzeige
AW: unglaubliche Lösung..... ** Danke
09.09.2012 17:36:57
Matze,Matthias
Hallo pbar007,
mit meinen Kenntnissen von VBA bin ich bei der ganzen Mappe mit Resspekt rangegangen.
Was mich als Laie da als erster gestört hat, ist das komplizierte hin und her deiner Sheetssummierungen,
und das "umbennen" was sicherlich der Performance auch nicht gerade zu gute kommt.
Die Lösung von Luschi find ich genial, woher kommt solches Wissen, ohne das ich eben zum ersten mal gesehen habe wußte ich gar nix von solchen Lösungswegen -Klasse.
Aber die Lösung hat bei meinen Excel 2010 dann beim Sheet 01-MgmtAcc wieder diese Meldung mit Speicher ausgelöst. Da du nun selbst herraus gefunden hast das Events das eigentliche Problem zu scheinen sind könnte man glatt meinen wenn du dies Makro dann ablaufen läßt das das flackern deine quasi zig umbenennerei was damit zu tun hat.
Der Aufwand das ganze summieren in ein einzellnes "neues" (ohne umbenenn )Tabellenblatt zu fassen, könnte hier eventuell auch helfen.
Gruß Matze

Anzeige
AW: unglaubliche Lösung..... ** Danke
10.09.2012 11:07:44
pbaer007
Hallo Matze,
vielen Dank für das Feedback.
Ja, leider entwickelt sich meine VBA-Kenntisse nur langsam.
Und so kommt es schon vor, dass ich die umständlichen Wege gehe,
weil die kurzen nicht bekannt sind.
Aber das gute an diesem Forum ist, dass man immer wieder gute Ansätze mitbekommt
und vor allem, wie z. Bsp. Luschi, es Profis gibt, die Ihr Wissen nicht nur theoretisch,
sondern mit ganzen Codes weitergeben.
Ich gebe Dir recht, dass das Hin- und Herhüpfen und Umbenennen und Rückbenennen nicht gerade der Übersicht dienlich ist (und der Performance).
Was man nicht besser kann .... nu aber kann ich Version 2.0 anstreben
und auch diese "Kleinigkeiten" verbessern.
Auf alle Fälle, vielen Dank für die Unterstützung.
Gert
Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige