Ich habe ein recht umfangreiches Excel-Teil geschrieben (Excel 97 auf
NT) was folgendes tut:
Es ist einiges an Daten drin (1000*33 / 6000*30 Zellen) und ein paar
Auswertungs- und Steuertabellen. Hinzu kommen 4 VBA-Module zur
Auswertung und ein Master-Modul, das folgendes tut: Es oeffnet ein
dummy-workbook (enthaelt ein nichts ausser 8 leeren Blaettern und ein
paar Makros), kopiert ein paar der Daten und Seiten aus dem
Master-Workbook hinzu und speichert es unter einem bestimmten Namen ab.
Jetzt passieren folgende Dinge:
1. Das Master-Workbook bleibt nach dem Oeffnen des dummy einfach stehen
und reagiert auf ueberhaupt nichts mehr, nur noch auf den Taskmanager.
Lasse ich es hingegen mit Breakpoints im VBA-Code alle naselang
anhalten, laeuft es wunderbar durch !!!
2. Die erzeugten Workbooks enthalten eine User-Form, welche bestimmte
Filterkriterien fuer die Daten ermittelt. Beim ersten mal laufen alle
Berechnungen durch, und bei Eingabe neuer Kriterien stuerzt es mit einer
Wahrscheinlichkeit von ca. 30 % ab. Diese Wahrscheinlichkeit steigt mit
jedem neuen Versuch.... Diese Abstuerze aeussern sich einmal durch
ploetzliches Verschwinden von Excel und ein andermal durch einen Dr.
Watson-Error (access violation).
In fruheren Versionen kam dies auch schon ein paar mal vor. Dem bin ich
damit entgegengetreten, dass ich das gesamte Master-Workbook nochmal neu
geschrieben, bzw. VBA-Module und Tabellen in ein neues, leeres Workbook
importiert / kopiert habe.
Ich habe keine Ahnung mehr was das alles soll, und waere ueber
irgendeine Hilfestellung sehr sehr gluecklich, da dass einzige Resultat
unserer Nachfragen bei Microsoft eine Support-Rechnung war...
Vielen Dank schon mal im vorraus....
Andreas Jaeger
My adress:
andreas...@studbox.uni-stuttgart.de
natuerlich laesst sich bei Unkenntnis der Anwendung nur mutmaßen woran
das liegen kann. Deshalb nur ein paar allgemeine Anmerkungen:
1) Hast du Ereignisprozeduren in Deinen Mappen? Auch in der
Dummy-Mappe?
2) Wie referenzierst du die Arbeitsmappen? Über Namen, Indizes,
ActiveWorkbook, ThisWorkbook? Kann es sein, daß Du z.B. mit
ActiveWorkbook arbeitest und Dich damit nach Öffnen der Dummy-Mappe
auf diese beziehst, statt auf die Anwendungs-Mappe?
Ciao,
Roger
Wahrscheinlich ist der CPU-Stapel durcheinander geraten, so daß die
Rücksprungadressen verloren gegangen sind.
Ein Ansatz: Achte darauf, daß alle User-Forms sofort nach Gebrauch mit
"Unload Me" entladen werden. Die UserForms sind dafür berüchtigt, exzessiv
Gebrauch vom CPU-Stapel zu machen und ihn nach Beendigung etwas unsauber zu
hinterlassen.
Wenn es nicht zwingend nötig ist, daß die Tochter-Workbooks über UserForms
verfügen, gestalte Deine Anwendung so, daß nur das Master-Workbook die
UserForm zur Verfügung stellt und transportiere die Kriterien über
VBA-Variablen in die Tochter-Workbooks. Womöglich ist es auch sinnvoller,
die Anwendung strikt zwischen Programm und Daten zu trennen, indem die
Funktionalität inkl. UserForms in einem Add-In abgebildet wird und in den
Master- und Tochter-Workbooks nur die reinen Daten enthalten sind.
HTH
Werner
--
Bei Antwort bitte NOSPAM entfernen /
Please remove NOSPAM at response
--------------------------------------------------------------
Andreas Jaeger schrieb in Nachricht
<36B1A10A...@cip.mathematik.uni-stuttgart.de>...