Ort: Phuket, Thailand | Hallo Wolf33 Wenn die Verarbeitung lange dauert, ist das Verhalten der Benutzer durchaus verständlich. Die Sanduhr läuft eben unter Windows vielfach auch, wenn sich ein Programm verabschiedet hat. Du hast andere Möglichkeiten, den Benutzer über den Fortschritt der Verarbeitung zu informieren, als einfach nur einen grauen Bildschrim und eine sich drehende Sanduhr anzuzeigen. Allerdings ist evt. das Laden Ereignis des Formulares dafür nicht geeignet, weil das Formular zu diesem Zeitpunkt eben noch nicht ganz geladen ist und damit teilweise Interaktionen mit dem Formular über den VBA Code nicht möglich sind. Es gibt aber andere Ereignisse, wie z.B. OnCurrent, welche allenfalls optimaler sind. Was kannst Du machen: - Application.Echo True, "Bitte warten, Verarbeitung läuft..."
erzeugt einen Statusbar Text im Formular. Dieser ist so allerdings statisch. Da Du jedoch eine komplexe Verarbeitung mit mehreren Schritten durchführst, spricht nichts dagegen jeweils den Benutzer mit obigem Befehl über den Stand der Arbeiten im Hintergrund zu informieren. - Auf dem Formular kannst Du eine Textbox ausgeben (welche Du allenfalls später wieder unsichtbar schalten kannst), in welcher Du den Stand der Arbeiten ausgibst, allenfalls sogar in einer Scrollbaren Liste, damit man alle bereits durchlaufenen Aktivitäten sieht.
Gruss Henry |