Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: msgbox zur Laufzeit von Makros

msgbox zur Laufzeit von Makros
15.04.2013 10:51:04
Makros
Hallo Zusammen!
Ich habe eine Anwendung, in der es Makros gibt die ziiieeeemlich laaaange für die Ausführung brauchen. Ich möchte während der Laufzeit eine Msgbox oder Userform oder ähnliches zeigen können, für die der Benutzer nicht auf OK klicken muss, wenn das Makro fertig ist. so eine Art Splash Screen, der geschlossen wird, sobald das Makro fertig ist. Die Statuszeile ist dazu zu klein.
Meine User brauchen große Fensterchen :-)
Geht so etwas? Gibt es so ein Element in Excel?
Freue mich über jeden Tipp.
MFG
Sebastian

Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
am einfachsten
15.04.2013 10:55:22
Klaus
Hallo Sebastian,
dazu gibt es sehr viele komplizierte Lösungen - und eine bewährte, einfache.
Mache ein neues Blatt, dass nennst du Zb. "Warten"
In das Blatt kopierst du ein Bild von einer Sanduhr oder ähnliches sowie einen genügend größen Infotext, entweder in eine Zelle oder gleich als WordArt.
Dein Makro umbastelst du dann so:
Sub MakroMitHinweis()
sheets("Warten").visible = True
sheets("Warten").activate
[Dein Makro]
sheets("Warten").visible = false
'oder gleich: sheets("Warten").visible = xlveryhidden
End Sub
Das ist in 2 minuten gemalt / geproggt und besser als jedes Info-Fenster.
Grüße,
Klaus M.vdT.

Anzeige
AW: msgbox zur Laufzeit von Makros
15.04.2013 11:09:55
Makros
Hallo,
Makros gibt die ziiieeeemlich laaaange für die Ausführung brauchen
da werd ich immer misstrauisch.
Auch Auswertungen über mehrere 1000 Zeilen erledige i.d.R. in weniger als 5 Sekunden. Oft merkt man gar nicht, dass überhaupt was passiert.
Gruß
REudi

Anzeige
AW: msgbox zur Laufzeit von Makros
15.04.2013 12:12:29
Makros
Ich habe es lösen können.
Man kann dies tatsächlich mit einem Userform lösen.
Der Witz dabei ist, man muss dass UserForm "ungebunden" zeigen lassen, dann kann man es sogaer während der Laufzeit mit neuem Text versehen:
Sub Test_Splash_Screen
'Das UserForm heißt hier "SplashForm" und hat nicht drauf außer ein Bezeichnungsfeld "Label1"
SplashForm.Label1.Caption = "Liste wird erszeugt..." & Chr(13) & Chr(13) & "Bitte warten!"
SplashForm.Show 0 'die "Null" hinter dem ".Show" gibt an, dass das UserFrom ungebunden ist
SplashForm.Repaint
Application.Wait (Now + TimeValue("0:00:03"))
SplashForm.Label1.Caption = "Daten werden aufbereitet..." & Chr(13) & Chr(13) & "Bitte  _
warten!"
SplashForm.Repaint
Application.Wait (Now + TimeValue("0:00:03"))
Unload SplashForm
End Sub
Trotzdem Danke!
@Reudi: Des werden in den Makros u.a. Formatierungen, Formeln und Druckbereiche automatisch erzeugt.
So etwas dauert in der Regel per VBA etwas länger ...
MFG
Sebastian
Never stop groovin'!
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige