Automatisierungsfehler von Clients getre
21.02.2020 22:08:31
Clients
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