![]() |
EXCEL-VBA: Blätter kopieren
Hi!
Folgende Vorgangsweise, um aus mehreren Excel-Mappen eine Übersicht in einer eigenen Mappe zu erstellen: Der Code läuft in der Mappe, die die Übersicht enthalten soll. - Öffnen der anderen Mappe - Kopieren des gewünschten Blattes innerhalb der anderen Mappe - In der Kopie alle Formeln durch Werte ersetzen - Kopie in die Übersichtsmappe kopieren - Andere Mappe ohne speichern schließen Das Problem dabei: Es funktioniert genau 22x problemlos. Beim 23. Mal läßt sich das Blatt nicht mehr in die Übersichtsmappe kopieren. Ich vermute, daß es an mangelndem Speicherplatz liegt. Ein Löschen der Zwischenablage hilft nicht. Arbeisspeicher wäre genug frei. Hat Excel eine interen Zwischenablage, oder einen begrenzten Speicher, den es vom Betriebsystem zugewiesen bekommt? Hat jemand eine Idee, wie ich dieses Problem umgehen kann? mfg WB |
Was ist, wenn du die Blätter direkt in die Übersichtsmappe kopierst und dort dann die Formeln durch Werte ersetzt. Dann sparst du einmal kopieren und löschen.
|
Gibt's irgendeine Fehlermeldung?
Funktionierts wenn Du es mit Einzelschritt (F8) machst? |
Hi!
@Shadow Das habe ich (natürlich) ursprünglich versucht. Leider gibt es in den Quelldateien einige (miserabel programmierte) Funktionen, die das nicht zulassen. Da müsste ich zuerst die Quellen überarbeiten. Vielleicht wird mein Auftrag aber noch darauf ausgedehnt. Wenn es aber ein Speicherproblem ist, wir dadurch nur die Grenze verschoben. Aber auch 50 mögliche Kopiervorgänge wären eigentlich zu wenig. @testi Fehlermeldung: Die Methode Copy des Worksheet-Objektes ist fehlgeschlagen. Einzelschritt ist nicht möglich. Würde aber auch nichts bringen, weil ich ja genau weiß wo der Fehler auftritt. Ich weiß nur nicht warum, vermute aber einen Speicherüberlauf. Na ja, vielleicht nimmt der Auftraggeber Vernunft an, und folgt meinem Ratschlag: Den Mist wegwerfen, und als DB-Anwendung neu programmieren. mfg WB |
Klingt vielleicht blöd,aber probiers mal wenn Du eine kleine Pause vor dem 22x kopieren einfügst.
Könnte sein, das Excel den Speicher (genau wie du den Speicherüberlauf vermutest) zu langsam wieder frei gibt. |
Hi!
Eine Pause habe schon versucht, weil nach dem Kopieren innerhalb der Quelle die Zellen neu berechnet werden. Wenn ich nur wenige mögliche Quellen verwende, und den Vorgang mehrfach ablaufen lasse, tritt der Fehler auch auf. Und zwar genau dann, wenn die Summe der Vorgänge 23 ist. An einer Pause kann es also nicht liegen. mfg WB |
Hmmm... habe gerade versucht ein einfaches Arbeitsblatt mit ein paar Formeln drauf 150x zu kopieren. Ging ohne Probleme.
Sind da vielleicht Diagramme auf den Blättern drauf. Weil ich hatte schon mal einen User der es geschaft hat die maximal mögliche Anzahl von Diagrammen in einer Excel-Mappe anzulegen. Als er noch ein weiteres Diagramm einfügen wollte kamen nur mehr komische Fehlermeldungen und es war nicht möglich. Er musste die Datei dann in 2 Mappen aufteilen. |
Hi!
@Shadow Das könnte die Idee sein. Ich muß mich erst über die maximale Anzahl von Diagrammen schlau machen, aber das ist eine Ansatz. Normalerweise programmiere ich DB-Anwendungen mit VB. Excel ist nicht so mein Ding, aber ich forsche einmal nach. Das Ergebnis werde ich natürlich posten. mfg WB |
Könnte das Dein Problem vielleicht lösen?
http://support.microsoft.com/?scid=k...pid=1742&sid=7 |
Hi!
Der Link bezieht sich zwar auf die Mac-Versionen, hat mir aber trotzdem erstmal weitergeholfen. Diagramme können auch zu einem Überlauf bei den Schriftarten führen. Inzwischen habe ich den Auftraggeber davon überzeugt, daß mit Excel nur eine Übergangslösung mit Einschränkungen möglich ist. Damit dürfte das Thema erstmal erledigt sein. Nochmal Danke für die Hilfe! mfg WB |
| Alle Zeitangaben in WEZ +2. Es ist jetzt 03:30 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag