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

optische Fortschrittsanzeige

Forumthread: optische Fortschrittsanzeige

optische Fortschrittsanzeige
06.12.2005 19:00:32
Peter
Hallo,
ich möchte eine optische Anzeige (UfrmStatus) für die Abarbeitung
von meheren Makros basteln welche beim öffnen der Datei
aktiviert wird.
Dazu möchte ich nicht die abgearbeitete Zeilenzahl
oder Zähler benutzen.
Am Ende der einzelnen Makros soll für 1. Sekunde der aktuelle Stand
nach meiner Angabe angezeigt werden.
Leider hackt die Anzeige oder springt nicht weiter.
Wer kann nochmal helfen
Danke Peter
'In "DieseArbeitsmappe"

Private Sub Workbook_Open()
Call gesamt
End Sub

'### In UfrmStatus

Private Sub UserForm_Initialize()
LblVerlauf.Width = 0
End Sub


Private Sub UserForm_Activate()
Dim i As Integer
'Application.Wait Now + TimeSerial(0, 0, 1)
Me.Caption = "Bitte warten..."
LblVerlauf.Width = 10
FmeStatusanzeige.Caption = "10% abgearbeitet"
Call Schleife1
LblVerlauf.Width = 50
FmeStatusanzeige.Caption = "50%"
Call Schleife2
LblVerlauf.Width = 100
FmeStatusanzeige.Caption = "100%"
Application.Wait Now + TimeSerial(0, 0, 1)
Unload Me
End Sub

'###In Modul1
Sub gesamt()
UfrmStatus.Show modal
End Sub
Sub Schleife1()
For i = 1 To 1000
Cells(20, 2) = i
Next i
Application.Wait Now + TimeSerial(0, 0, 1)
End Sub
Sub Schleife2()
For i = 1 To 2000
Cells(20, 3) = i
Next i
Application.Wait Now + TimeSerial(0, 0, 1)
End Sub
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: optische Fortschrittsanzeige
06.12.2005 19:41:36
Matthias
Hallo Peter,
Du brauchchst erst einmal das ProgressBar-Control dazu.
Rechtklick auf die Werkzeigssammlung, "zusätzliche Steuerelemente...", dann die "Microsoft ProgressBar Control" auswählen.
Die Eigenschaften der Progressbar sind u.a. folgende:
Mit Max den maximalen Wert (wenn der Blaken voll ist)
mit Value den Füllstand (als bei Max = 100 und Value = 50 ist der Balken halb gefüllt).
Damit nach einem Befehl wie ProgressBar1.Value = 40 die Änderung auch auf der Userform gezeichnet werden kann, musst du anschließend einen DoEvents-Befehl setzen.
Gruß Matthias
Anzeige
AW: optische Fortschrittsanzeige- noch eine Frage
06.12.2005 21:19:41
Peter
Hallo Matthias,
erstmal Danke für Deine Hilfe.
Wie führt man beispielsweise einen DoEvents Befehl aus,
um kurz vor Beendigung der Prozedur
(ohne das auf eine Schleife zugegriffen wird z.B-Schleifendurchläufe))
einen Befehl an die Userform zu geben?
Danke Peter
AW: optische Fortschrittsanzeige- noch eine Frage
06.12.2005 21:27:11
Nepumuk
Hallo Peter,
das aktualisieren der Anzeige in einem Progressbarcontrol erfordert DoEvents nicht.
Gruß
Nepumuk

Anzeige
AW: optische Fortschrittsanzeige- noch eine Frage
07.12.2005 09:10:34
Matthias
Hi Nepumuk,
Habe es eben getestet und mich - dann eigentlich auch nicht gewundert:
Du hast natürlich mal wieder recht ;-)
Gruß Matthias
;

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