Hallo liebes Forum,
ich habe eine Frage zu einem VBA-Skript.
Der Button "Start" in der Excel-Datei im Anhang zeigt verschiedene Blattbereiche in einer Userform an.
Das funktioniert über Zwischenschritte, bei denen zunächst ein Chart aus dem Bereich erstellt wird, welches als .jpg gespeichert und anschließend in die Userform geladen wird. Dafür habe ich im Netz einen Code gefunden, den ich angepasst habe.
Beim Testen taucht selten, aber hin und wieder dieser Fehler auf:
Nach etwas Debugging sieht es für mich so aus, als wäre die .Select-Methode manchmal nicht schnell genug mit dem Auswählen, so dass der darauf folgende Code, der mit der Auswahl arbeitet, einen Fehler ausgibt.
Die einzige Lösung, die ich dazu gefunden habe ist, nach dem .Select eine Sekunde Pause über Application.Wait einzubauen.
Den Code-Teil habe ich in der Datei in der Sub UserForm_Initialize() hervorgehoben. Damit taucht der Fehler nicht mehr auf. Leider verzögert das aber die Darstellung der Userform um eine Sekunde pro Seite.
Ich arbeite normalerweise ohne .Select. Aber wenn ich versuche, diesen Code ohne .Select zu schreiben, gibt es immer Fehler.
Könnte mir jemand helfen, dass .Select da raus zu bekommen oder hat eine eine andere Idee, wie man auf die Pause mit Application.Wait verzichten kann, das Skript aber trotzdem zuverlässig funktioniert?
Danke und Gruß,
Mick
ich habe eine Frage zu einem VBA-Skript.
Der Button "Start" in der Excel-Datei im Anhang zeigt verschiedene Blattbereiche in einer Userform an.
Das funktioniert über Zwischenschritte, bei denen zunächst ein Chart aus dem Bereich erstellt wird, welches als .jpg gespeichert und anschließend in die Userform geladen wird. Dafür habe ich im Netz einen Code gefunden, den ich angepasst habe.
Beim Testen taucht selten, aber hin und wieder dieser Fehler auf:
Nach etwas Debugging sieht es für mich so aus, als wäre die .Select-Methode manchmal nicht schnell genug mit dem Auswählen, so dass der darauf folgende Code, der mit der Auswahl arbeitet, einen Fehler ausgibt.
Die einzige Lösung, die ich dazu gefunden habe ist, nach dem .Select eine Sekunde Pause über Application.Wait einzubauen.
Den Code-Teil habe ich in der Datei in der Sub UserForm_Initialize() hervorgehoben. Damit taucht der Fehler nicht mehr auf. Leider verzögert das aber die Darstellung der Userform um eine Sekunde pro Seite.
Ich arbeite normalerweise ohne .Select. Aber wenn ich versuche, diesen Code ohne .Select zu schreiben, gibt es immer Fehler.
Könnte mir jemand helfen, dass .Select da raus zu bekommen oder hat eine eine andere Idee, wie man auf die Pause mit Application.Wait verzichten kann, das Skript aber trotzdem zuverlässig funktioniert?
Danke und Gruß,
Mick