Anzeige
Archiv - Navigation
1740to1744
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

Automatisierungsfehler von Clients getre

Automatisierungsfehler von Clients getre
21.02.2020 22:08:31
Clients
Hallo in die Runde,
Als erste einmal ein herzliches Dankeschön an alle die sich hier so fleißig austauschen.
In den letzten Jahren habe ich alle meine Fragen mit Eurer Hilfe lösen können ohne dass ich sie selbst hier habe stellen müssen.
Mit Eurer Unterstützung habe ich mir mehr als eine gut funktionierende Lösung bauen können.
Kurz zu meinem Hintergrund.... Ich mache das VBA Coden eher nebenher und habe mir alles so nach und nach selber beigebracht. dabei ist ein solides Wissen zusammengekommen mit dem ich mich gewapnet fühle auch dem einen oder anderen zu helfen ABER ich verstehe viele Hintergründe, Fachbegriffe und Tricks nicht die ich hier gelesen habe.
Nun habe ich ein Problem, bei dem ich hier leider bisher auch noch keinen Ansatz zur Lösung finden konnte
Ich habe eine inzwischen ziemlich große Lösung gebaut aus der ich unter anderem eine Rechnung automatisch erstellen lasse.
Das ganze funktioniert über Schleifen und Formulare und hat etliche Wenn dann Optionen zu durchlaufen bis am Ende ein PDF als Kopie eines Tabellenblattes in zwei Ordner abgelegt werden.
Mein Problem ist dass ich SPORADISCH die Fehlermeldung bekomme:
Automatisierungsfehler Das aufgerufene Objekt wurde vom Client getrennt
Leider konnte ich bisher keine Gesetzmäßigkeit feststellen. Es kann sein dass ich die Funktion fünf Mal fehlerfrei nutzen kann und dann nach nur einer Verwendung der Fehler auftritt.
Ich habe den Tip aus diesem Beitrag befolgt und ( https://www.herber.de/forum/archiv/1180to1184/1181651_Automatisierungsfehler_Das_aufgerufene_Objekt_wurd.html
) und die Events für die Dauer der Laufzeit ausgeschaltet. Zunächst hatte ich den Eindruck es würde nun stabiler laufen, doch dann trat der Fehler wieder auf.
Ich habe die Prozedur schon diverse Male im Einzelschritt-Modus durchlaufen, doch immer wenn ich das gemacht habe ist der Fehler NICHT aufgetreten.
Ich befürchte zwar, dass der Code hier nicht wirklich hilft aber das ist der Teil in dem es "hakt"

Application.EnableEvents = False       'Tipp aus Forum macht die Sache ein wenig stabiler
CurGesamtpreisFürRechnung = 0
UF_Auswahl_Rechnungsart.Show   ' einfaches Auswahlfenster in dem der richtige Case  _
definiert wird
Select Case str_Rechnungsart
Case Is = "Pro Forma Rechnung"
Call ProFormaRechnungFürKundenErstellen
' Erstellung einer Liste auf einem Tabellenblatt mit folgeschritten bis zur Speicherung als PDF
' Der Fehler tritt in der Regel NACH der Erstellung der Listen
Case Is = "Einzelrechnung"
Call EinzelRechnungFürKundenErstellen
' Erstellung einer Liste auf einem Tabellenblatt mit folgeschritten bis zur Speicherung als PDF
' Der Fehler tritt in der Regel NACH der Erstellung der Listen
If bolProgrammUnterbrechen = True Then
Exit Sub
End If
With Sheets("Kundenkarte")
.Range("U" & Zeile_In_KundenKarte) = "Rechung (" & longRechnungsNummer & ")"
.Range("V" & Zeile_In_KundenKarte) = str_Rechnungsnummer
.Range("W" & Zeile_In_KundenKarte) = Format(CurGesamtpreisFürRechnung, "#,##0.00 €") _
_
.Range("X" & Zeile_In_KundenKarte) = Date
End With
End Select
Application.EnableEvents = True

Der gesamte relevante Code besteht aus über 500 Zeilen...
Wo kann ich noch nach Ansätzen forschen um den Fehler endgültig auszuschalten?
Danke

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Automatisierungsfehler von Clients getre
21.02.2020 22:15:52
Clients
"das ist der Teil in dem es hakt" ?
Excel zeigt dir doch GENAU, wo genau es hakt, wenn du auf "Debuggen" klickst.
Welche Zeile verursacht denn jetzt die Fehlermeldung ?
AW: Automatisierungsfehler von Clients getre
21.02.2020 22:38:34
Clients
Hallo Onur,
wenn es so wäre hätte ich sicher eine präzisere Frage stellen können bzw das Problem längst gelöst.
Ich fange Fehler in diesem Programm über on error ab!
Wenn der Fehler auftritt löst es als erstes die "richtige" Fehlerroutine aus. normalerweise sollte ich danach einfach weiter arbeiten können, doch sobald ich das Fenster schließe zeigt er mir den Fehler an.
dabei scheint es eben kein Fehler im Code zu sein, denn er hat mich noch nie auf eine Codezeile geschickt!
Außerdem ist mein größtes Problem ja, dass es nicht immer auftritt. Auch das spricht eher gegen einen Fehler im Code, da ich nach dem notwendigen Neustart von Excel an genau der Stelle wieder einsteigen kann wo ich zuvor die Fehlermeldung bekommen habe, dann aber der Code in 19 von 20 Fällen problemlos durchgearbeitet wird...
einfach kann ich schon ;)
Anzeige
AW: Automatisierungsfehler von Clients getre
21.02.2020 22:43:02
Clients
Selber schuld.
Wenn man mit Error-Handling arbeitet, sollte man sich genau damit auskennen.
Schalte mal alle "On Errors" aus und dann siehst du die Stelle der Fehlermeldung.
AW: Automatisierungsfehler von Clients getre
21.02.2020 23:24:18
Clients
Wie gesagt Onur,
einfach kann ich schon. Das war natürlich das erste was ich probiert habe.
Um noch einmal auf Nummer sicher zu gehen habe ich das gerade noch einmal wiederholt...
Es werden immer wieder UNTERSCHIEDLICHE Zeilen markiert.
Das bedeutet das Programm wird zu unterschiedlichen Zeiten "gestört".
Außerdem sollte ein Programmfehler ja durch die Fehlerroutinen abgefangen werden, das wird es aber nicht, nach meinem Verständnis ist der Fehler nicht im eigenlichen Code zu finden!
Dafür spricht auch, dass Excel neu gestartet werden muss.
Es erschein das Fenster: Microsoft Excel funktioniert nicht mehr!
Ein Debuggen ist NICHT möglich
Anzeige
AW: Automatisierungsfehler von Clients getre
22.02.2020 10:19:52
Clients
Hallo Luschi,
Danke für den Link
Ich verstehe die Funktion des DoEvent wie folgt:
Durch das Einfügen von DoEvent in einer Schleife (das Wort vor dem Loop einsetzten scheint da zu reichen) kann man eine Unterbrechnung einer Schleife erzielen.
Das ist zwar nicht unbedingt, das was ich dachte zu brauchen, doch die Aussage "Mal Luft an die Schleife bringen" (lol) bedeutet wohl nicht viel mehr als dem System eine kleine Verschnaufpause zu geben...
Tatsächlich habe ich mit der Einführung des Worts in meine Schleife mehr als 15 Mal die Prozedur ablaufen lassen können... gestern ging es etwa 5 Mal... bevor es wieder zu dem Problem kam...
Es hilft ein Stück weiter... Mal schauen ob sich die Stabilität bestätigt...
Wenn noch jemand einen Hinweis hat, versuche ich gerne weiter...
Anzeige
AW: Automatisierungsfehler von Clients getre
23.02.2020 09:21:27
Clients
Hallo Dieter,
man muß natürlich 'DoEvents' an der richtigen Stelle in der Schleife oder nach einem Befehl mit längerer Laufzeit aufrufen.
Gruß von Luschi
aus klein-Paris
AW: Automatisierungsfehler von Clients getre
25.02.2020 14:20:19
Clients
Ich habe nun den Einsatz von DoEvents an verschiedenen Stellen im Code ausprobiert.
Leider immer wieder mit dem gleichen Ergebniss. Über kurz oder lang stürzt mir Excel ab.
Das irritierende ist, ich habe in eine anderen Lösung die für einen anderen Zweck gebaut habe eine ähliche "Gefahrenstelle".
Ich muss AUS VERSCHIEDENEN EXCEL WORKBOOKS eine große Menge von Daten in eine Tabelle übernehmen.
Das ganze funkioniert über Laufwerkgrenzen hinweg bisher ohne Probleme.
Der Rechner und die Systemeinstellungen sind bei beiden Lösungen das gleiche...
In dem hier beschriebenen "Problemfall" müssen "nur" ca 7000 Zeilen gecheckt werden und nur die Zeilen, die bestimmte Bedingungen erfüllen müssen in ein anderes Tabellenblatt übernommen werden.
Am Anfang des Prozesses habe ich Sorge dafür getragen, dass keine Berechnungen (automatisch) erfolgen, so dass ich eine gute Performance erreiche, aber hier bricht mir das System in unregelmäßigen abständen zusammen.
Da der Prozess wenn er ohne Fehler durchläuft nur ein paar Sekunden benötigt (noch nie mehr als 10) habe ich auch kein Problem damit das System für die Zeit in Ruhe zu lassen...
Also Klick und auf Ergebnis warten ist der "Norm"-Ablauf...
Ich finde solche Probleme total uncool...
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige