Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

visuelle Fortschrittszeige bei umfangreichem Makro

Forumthread: visuelle Fortschrittszeige bei umfangreichem Makro

visuelle Fortschrittszeige bei umfangreichem Makro
21.02.2006 13:43:22
Holger
Hallo,
ist es es möglich, bei einem Makro, das auf meinem Rechner ca. 1 Minute läuft, den Fortschritt visuell zu zeigen? Ich stelle mir ein Fenster mit einer Anzeige von 0 - 100 % vor, vergleichbar mit der Darstellung bei der Installation von Software.
Gruss, Holger
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: visuelle Fortschrittszeige bei umfangreichem Makro
21.02.2006 13:55:33
u_
Hallo,
geht, aber dann läuft das Makro u.U 2 Minuten.
Gruß
Geist ist geil!
AW: visuelle Fortschrittszeige bei umfangreichem Makro
21.02.2006 14:51:04
yogi
Tach Holger
1. Userform1 mit zwei übereinanderliegenden Labels 1 und 2, Label1 schwarz, Label2 grün.
Code der Userform1

Private Sub UserForm_Activate()
Label2.Width = 0
Call do_some_work
End Sub

2. Hauptprogram
Sub main()
UserForm1.Show
End Sub
3. Arbeitsmakro
Sub do_some_work()
Dim i As Integer
Dim step As Long
Dim länge As Double
Dim schritt As Integer
step = 20 'Schrittanzahl festlegen
länge = 0
schritt = UserForm1.Label1.Width / step 'Schrittbreite pro Aktualisierung
For i = 1 To step
länge = länge + schritt
UserForm1.Label2.Width = länge
' hier die Arbeit verrichten, d.h. da wir nichts tun, warten wir
Application.Wait (Now + TimeValue("0:00:01"))
DoEvents
Next
Unload UserForm1
End Sub
Gruss
yogi
Anzeige
AW: visuelle Fortschrittszeige bei umfangreichem Makro
21.02.2006 17:03:04
Holger
Hallo Yogi,
danke für den Tipp. Aber noch mal eine Frage: Da ich in VBA nicht so bewandert bin: Wo füge ich Deinen Code ein? Im Modul? Wann und wo vor oder nach meinem VBA-Code?
Gruss, Holger
AW: visuelle Fortschrittszeige bei umfangreichem Makro
22.02.2006 16:53:37
yogi
N'abend Holger
Die Userform must du neu erstellen. Wichtig ist, dass die zwei Labels übereinander liegen.
Den code von
For i=1 to Step
bis
Next
ersetzt du durch deinen Code. An geeigneter Stelle in deinem Code fügst du
länge = länge + schritt
UserForm1.Label2.Width = länge
DoEvents
ein. (Ich nehme an, dass dein Program auch eine Schleife hat, dann am besten auch direkt nach "For ...")
Gruss
yogi
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