ProgressBar Spielerei
- thowe
- Beiträge: 196
- Registriert: 12. Sep 2022, 16:57
- Hat sich bedankt: 78 Mal
- Danksagung erhalten: 67 Mal
- Kontaktdaten:
ProgressBar Spielerei
Moin,
eine kleinere Spielerei, mit einer "maßgeschneiderten", selbst gebastelten ProgressBar.
Oft ist es so, dass man doch mehrere, sehr viele Datensätze verarbeitet, kopiert, einfügt oder andere intensive Arbeitsschritte hat.
Da ist eine kleine Visualisierung oft nützlich und hilfreich für den Benutzer, dass doch alles - rund - läuft, und Excel nicht abgeschmiert ist.
Wie funktioniert die zum Herunterladen verfügbare Arbeitsmappe?
Einfach im- einzigen - Arbeitsblatt: "Progressbar" auf den Button "Die ProgressBar starten > clicken.
In diesem Arbeitsblatt wird in Zelle "C2" (Range: "vbaLblProgressBar") eine Zahl von 0 auf 100 gezählt und eine UserForm "dlgProgressBar" angezeigt.
Mit dem Click auf den Button wird die die Prozedur TestProgressBar aus dem Modul: "mdlTESTS" aufgerufen.
in dieser Prozedur wird auf Basis der Variable lngCounter definiert.
-> wer herumspielen möchte, kann diese Variable gerne mit einer Zelle im Arbeitsblatt verknüpfen und so individuell den Wert (lngCounter.Value) festlegen, anstatt im Code herumzustochern.
Die gesamte Mechanik findet dann in der UserForm "dlgProgressBar" in der Sub Prozedur: UpdateProgressbar statt. Viel Spaß mit dieser VBAstelei!
LG thowe
eine kleinere Spielerei, mit einer "maßgeschneiderten", selbst gebastelten ProgressBar.
Oft ist es so, dass man doch mehrere, sehr viele Datensätze verarbeitet, kopiert, einfügt oder andere intensive Arbeitsschritte hat.
Da ist eine kleine Visualisierung oft nützlich und hilfreich für den Benutzer, dass doch alles - rund - läuft, und Excel nicht abgeschmiert ist.
Wie funktioniert die zum Herunterladen verfügbare Arbeitsmappe?
Einfach im- einzigen - Arbeitsblatt: "Progressbar" auf den Button "Die ProgressBar starten > clicken.
In diesem Arbeitsblatt wird in Zelle "C2" (Range: "vbaLblProgressBar") eine Zahl von 0 auf 100 gezählt und eine UserForm "dlgProgressBar" angezeigt.
Mit dem Click auf den Button wird die die Prozedur TestProgressBar aus dem Modul: "mdlTESTS" aufgerufen.
in dieser Prozedur wird auf Basis der Variable lngCounter definiert.
-> wer herumspielen möchte, kann diese Variable gerne mit einer Zelle im Arbeitsblatt verknüpfen und so individuell den Wert (lngCounter.Value) festlegen, anstatt im Code herumzustochern.
Die gesamte Mechanik findet dann in der UserForm "dlgProgressBar" in der Sub Prozedur: UpdateProgressbar statt. Viel Spaß mit dieser VBAstelei!
LG thowe
- Folgende Benutzer bedankten sich beim Autor thowe für den Beitrag:
- d'r Bastler
- d'r Bastler
- Beiträge: 670
- Registriert: 29. Aug 2022, 13:20
- Hat sich bedankt: 175 Mal
- Danksagung erhalten: 90 Mal
Re: ProgressBar Spielerei
Moin thowe,
na - Du kannst aber froh sein, dass Du diese Spielerei hier veröffentlich hast. Im Vorgängerforum, in dem ich eine ähnliche Anleitung vorgestellt hatte, sind einige der prominenten Experten über mich hergefallen, wie die Schmeißfliegen über verdorbenen Fisch.
Bin neugierig, wie du das gelöst hast...
... elegant!!
Ist auf jeden Fall hübscher, als das dröge Control, das sich in der Toolsammlung/Steuerelemente hinzufügen lässt.
lg
na - Du kannst aber froh sein, dass Du diese Spielerei hier veröffentlich hast. Im Vorgängerforum, in dem ich eine ähnliche Anleitung vorgestellt hatte, sind einige der prominenten Experten über mich hergefallen, wie die Schmeißfliegen über verdorbenen Fisch.
war der kosente Tenor von ein paar Leuten, die Belehrungen bis heute nicht lassen können. Sogar hier schon , aber diese Eselei fand dann schnell ein Ende.Wer ProgessBars braucht, dokumentiert seine Unfähigkeit korrekt zu programmieren!
Bin neugierig, wie du das gelöst hast...
... elegant!!
Ist auf jeden Fall hübscher, als das dröge Control, das sich in der Toolsammlung/Steuerelemente hinzufügen lässt.
lg
Zuletzt geändert von d'r Bastler am 14. Aug 2024, 20:36, insgesamt 1-mal geändert.
d'r Bastler von den VBAsteleien.de
Win 10 + Office 2019 & Win11 + Office 2021 + Visio 2019 pro & macOS.X15 + Office2019pro & Android12 & XL365
Win 10 + Office 2019 & Win11 + Office 2021 + Visio 2019 pro & macOS.X15 + Office2019pro & Android12 & XL365
- thowe
- Beiträge: 196
- Registriert: 12. Sep 2022, 16:57
- Hat sich bedankt: 78 Mal
- Danksagung erhalten: 67 Mal
- Kontaktdaten:
Re: ProgressBar Spielerei
Was meinst du mit:
Bin neugierig wie du das gelöst hast....?
LG
NS habe im Thread "Roadmap" @DonKey geantwortet...
lg
Bin neugierig wie du das gelöst hast....?
LG
NS habe im Thread "Roadmap" @DonKey geantwortet...
lg
- d'r Bastler
- Beiträge: 670
- Registriert: 29. Aug 2022, 13:20
- Hat sich bedankt: 175 Mal
- Danksagung erhalten: 90 Mal
Re: ProgressBar Spielerei
Och nö!! Lass doch die ollen Kamellen . Das Grautier ist seit meinem letzten Post zu seinem Thema inaktiv ...
Kommentar zu Deiner Lösung s.o. & u.
lg
Kommentar zu Deiner Lösung s.o. & u.
lg
Zuletzt geändert von d'r Bastler am 14. Aug 2024, 21:02, insgesamt 1-mal geändert.
d'r Bastler von den VBAsteleien.de
Win 10 + Office 2019 & Win11 + Office 2021 + Visio 2019 pro & macOS.X15 + Office2019pro & Android12 & XL365
Win 10 + Office 2019 & Win11 + Office 2021 + Visio 2019 pro & macOS.X15 + Office2019pro & Android12 & XL365
- d'r Bastler
- Beiträge: 670
- Registriert: 29. Aug 2022, 13:20
- Hat sich bedankt: 175 Mal
- Danksagung erhalten: 90 Mal
Re: ProgressBar Spielerei
Moin thowe,
mit elegant meine ich drei Aspekte des Themas:
lg
mit elegant meine ich drei Aspekte des Themas:
- ist das Design Deines Bars deutlich ansprechender als das Microsoft ProgressBarControl version 6.0, das man zu den Steuerelementen hinzufügen kann
- ist die Darstellung auch unabhängig von einer parent Userform möglich, und
- müssen (können aber) die Parameter nicht hart-codiert sein, sondern kommen aus Deiner Tabelle
lg
d'r Bastler von den VBAsteleien.de
Win 10 + Office 2019 & Win11 + Office 2021 + Visio 2019 pro & macOS.X15 + Office2019pro & Android12 & XL365
Win 10 + Office 2019 & Win11 + Office 2021 + Visio 2019 pro & macOS.X15 + Office2019pro & Android12 & XL365
- BitDoctor
- Beiträge: 16
- Registriert: 18. Aug 2024, 21:04
- Hat sich bedankt: 8 Mal
- Danksagung erhalten: 5 Mal
- Kontaktdaten:
Re: ProgressBar Spielerei
Vorweg erstmal ein "Hallo" in die Runde.
Nach anfänglichem "geknödel" gibt es mich nun auch hier
Ich "Bastel" (geil das man das hier so frei benutzen kann) mir in den Fällen größerer Code-Schleifen dann immer einen
Pseudoteiler, damit der Code-Ablauf durch die Progressbar nicht völlig ins stocken kommt.
z.B. lass ich dann die Bar nur alle 50 oder 100 Durchläufe aktualisieren.
Das spart viel Zeit und hat dennoch den Effekt zu sehen, das da noch was passiert.
LG von mir
Nach anfänglichem "geknödel" gibt es mich nun auch hier
Ich "Bastel" (geil das man das hier so frei benutzen kann) mir in den Fällen größerer Code-Schleifen dann immer einen
Pseudoteiler, damit der Code-Ablauf durch die Progressbar nicht völlig ins stocken kommt.
z.B. lass ich dann die Bar nur alle 50 oder 100 Durchläufe aktualisieren.
Das spart viel Zeit und hat dennoch den Effekt zu sehen, das da noch was passiert.
Code: Alles auswählen
'..........
Load PrgDlg
PrgDlg.Show 0
PrgDlg.Caption = "Abgleich läuft, bitte warten..." 'Aufruf Progressbar
ProgressBar 1 / lzE
For Z = 1 To lzE 'Schleife im Code (Beispiel)
'im Code am Ende der Schleife (Werte individell anpassbar)
If lzE < 100 Then
Wert = WorksheetFunction.Round(lzE, -1) / 10
ElseIf lzE < 500 Then
Wert = WorksheetFunction.Round(lzE, -1) / 50
Else
Wert = 100
End If
If Z Mod Wert = 0 Then 'wenn Schleife den "Teiler-Wert" erreicht dann Bar aktualisieren, sonst überspringen
ProgressBar Z / lzE
End If
Next Z 'Schleife im Code (Beispiel)
- Folgende Benutzer bedankten sich beim Autor BitDoctor für den Beitrag:
- d'r Bastler
- d'r Bastler
- Beiträge: 670
- Registriert: 29. Aug 2022, 13:20
- Hat sich bedankt: 175 Mal
- Danksagung erhalten: 90 Mal
Re: ProgressBar Spielerei
Moin BitDoctor!
a very warm welcome! Ja! basteln darf man hier , getreu dem Motto ganz oben im Header der Site
Du hast mit Deinem Post Deine PseudoTrennung vorgestellt. Bietet sich natürlich an. Was ich nicht sehe, ist wie Du denn das PG abbildest. Baust Du das ähnlich wie thowe aus eigenen grafischen Elementen, oder nutzt Du das Microsoft Control?
Eine Spielerei, die ich vor Jahren mal zusammengeschustert (das war noch vor ambitioniertem VBAsteln) findet sich als Anhang.
Und das auch noch zum Thema: Ich habe meine CD-Sammlung komplett gegrabbed und so rund 4.500 Dateien gespeichert. Dazu habe ich mir ein Tool geschrieben, dass es mir erlaubt in diesem riesen Datendschungel zu suchen, finden und gefiltert abzuspielen. Das Tool liest beim Start alle Dateien neu ein (es könnte ja etwas dazugekommen sein - ja ich kaufe tatsächlich noch CDs ) und formatiert in einer Tabelle einen hübschen Katalog.
Nachdem die Daten auf meinem lokalen Server liegen dauert das knapp eine Minute. Also natürlich ein PG (Microsoft-Control). Um eben Deine Trennung sinnvoll durchzuführen, ermittle ich beim Beenden des Tools die Gesamtzahl der Dateien und schreibe sie in eine CustomDocumentPorperty, die dann die 100% beim nächsten Programmstart vorgibt. Das PG zeigt immer 1/20 Fortschritt mit einem Segment.
lg und viel Spaß hier!
a very warm welcome! Ja! basteln darf man hier , getreu dem Motto ganz oben im Header der Site
Was wäre die Welt ohne Bastler ...VBAsteln makes the world go around ...
Du hast mit Deinem Post Deine PseudoTrennung vorgestellt. Bietet sich natürlich an. Was ich nicht sehe, ist wie Du denn das PG abbildest. Baust Du das ähnlich wie thowe aus eigenen grafischen Elementen, oder nutzt Du das Microsoft Control?
Eine Spielerei, die ich vor Jahren mal zusammengeschustert (das war noch vor ambitioniertem VBAsteln) findet sich als Anhang.
Und das auch noch zum Thema: Ich habe meine CD-Sammlung komplett gegrabbed und so rund 4.500 Dateien gespeichert. Dazu habe ich mir ein Tool geschrieben, dass es mir erlaubt in diesem riesen Datendschungel zu suchen, finden und gefiltert abzuspielen. Das Tool liest beim Start alle Dateien neu ein (es könnte ja etwas dazugekommen sein - ja ich kaufe tatsächlich noch CDs ) und formatiert in einer Tabelle einen hübschen Katalog.
Nachdem die Daten auf meinem lokalen Server liegen dauert das knapp eine Minute. Also natürlich ein PG (Microsoft-Control). Um eben Deine Trennung sinnvoll durchzuführen, ermittle ich beim Beenden des Tools die Gesamtzahl der Dateien und schreibe sie in eine CustomDocumentPorperty, die dann die 100% beim nächsten Programmstart vorgibt. Das PG zeigt immer 1/20 Fortschritt mit einem Segment.
lg und viel Spaß hier!
Zuletzt geändert von d'r Bastler am 19. Aug 2024, 18:20, insgesamt 1-mal geändert.
- Folgende Benutzer bedankten sich beim Autor d'r Bastler für den Beitrag:
- BitDoctor
d'r Bastler von den VBAsteleien.de
Win 10 + Office 2019 & Win11 + Office 2021 + Visio 2019 pro & macOS.X15 + Office2019pro & Android12 & XL365
Win 10 + Office 2019 & Win11 + Office 2021 + Visio 2019 pro & macOS.X15 + Office2019pro & Android12 & XL365
- thowe
- Beiträge: 196
- Registriert: 12. Sep 2022, 16:57
- Hat sich bedankt: 78 Mal
- Danksagung erhalten: 67 Mal
- Kontaktdaten:
Re: ProgressBar Spielerei
Hallöchen BitDoctor,
& natürlich herzlich Willkommen in der Bastelstube. Aber nur Für VBArotiker (<<<<<<<neurotiker).
Neben einem - für mich - SoftwareDoctor, einem SoftwarePhilos0phen nun auch noch ein Bitdoctor. Mann oh Mann da ist was los...
Da sage ich: Die kantige Bastelei beginnt.
Auch, Danke für deinen Post und das Einbringen deiner faszinierenden, fantastischen Idee.
Da spitzen sich meine violetten Vulkanierohrenn richtig.... (heb wird dich aufklären)
@all
Es gibt - aus meiner Sicht - selbsternannte Best Practicer - die meinen, es bedarf keiner Progressbar wenn man ordentlich programmiert.
Meine Meinung dazu, hier: https://vbasteleien.de/viewtopic.php?t=14#p1554
Wir freuen uns sehr auf weitere - mögliche - Basteleien, deinerseits, Herr BitDoctor
lg thowe
& natürlich herzlich Willkommen in der Bastelstube. Aber nur Für VBArotiker (<<<<<<<neurotiker).
Neben einem - für mich - SoftwareDoctor, einem SoftwarePhilos0phen nun auch noch ein Bitdoctor. Mann oh Mann da ist was los...
Da sage ich: Die kantige Bastelei beginnt.
Auch, Danke für deinen Post und das Einbringen deiner faszinierenden, fantastischen Idee.
Da spitzen sich meine violetten Vulkanierohrenn richtig.... (heb wird dich aufklären)
-> Wie sind hier deine Erfahrungen?, Wann trifft dieses stocksteife Verhalten auf...?damit der Code-Ablauf durch die Progressbar nicht völlig ins stocken kommt.
@all
Es gibt - aus meiner Sicht - selbsternannte Best Practicer - die meinen, es bedarf keiner Progressbar wenn man ordentlich programmiert.
Meine Meinung dazu, hier: https://vbasteleien.de/viewtopic.php?t=14#p1554
Wir freuen uns sehr auf weitere - mögliche - Basteleien, deinerseits, Herr BitDoctor
lg thowe
- BitDoctor
- Beiträge: 16
- Registriert: 18. Aug 2024, 21:04
- Hat sich bedankt: 8 Mal
- Danksagung erhalten: 5 Mal
- Kontaktdaten:
Re: ProgressBar Spielerei
@D´r Bastler,
## Was ich nicht sehe, ist wie Du denn das PG abbildest. ##
Über eine Userform - ich mag diese "Microsoft Control" einfach nicht.
Und außerdem finde ich ein UF einfach schicker.
@thowe,
## -> Wie sind hier deine Erfahrungen?, Wann trifft dieses stocksteife Verhalten auf...? ##
Nun ja, bei kleineren, ich nenne sie mal unspektakulären Schleifen kann man fast auf die PG verzichten.
Wenn jedoch bei Schleifen viele Zeilen und Spalten durchlaufen werden und bei jedem Durchlauf die PG aktualisiert wird,
dann macht sich das schon extrem bemerkbar. Da hilft die oben genannte Bastelei extrem, da die UF dann halt viel seltener ihr Anzeigeupdate durchläuft.
Der Aufruf und die Aktualisierung kosten halt Zeit. Ein kompletter Verzicht kommt für mich, bei längeren Makroabläufen, jedoch nicht in Frage.
Ich finde es einfach gut und sinnvoll, zu sehen das noch etwas passiert.
## Was ich nicht sehe, ist wie Du denn das PG abbildest. ##
Über eine Userform - ich mag diese "Microsoft Control" einfach nicht.
Und außerdem finde ich ein UF einfach schicker.
@thowe,
## -> Wie sind hier deine Erfahrungen?, Wann trifft dieses stocksteife Verhalten auf...? ##
Nun ja, bei kleineren, ich nenne sie mal unspektakulären Schleifen kann man fast auf die PG verzichten.
Wenn jedoch bei Schleifen viele Zeilen und Spalten durchlaufen werden und bei jedem Durchlauf die PG aktualisiert wird,
dann macht sich das schon extrem bemerkbar. Da hilft die oben genannte Bastelei extrem, da die UF dann halt viel seltener ihr Anzeigeupdate durchläuft.
Der Aufruf und die Aktualisierung kosten halt Zeit. Ein kompletter Verzicht kommt für mich, bei längeren Makroabläufen, jedoch nicht in Frage.
Ich finde es einfach gut und sinnvoll, zu sehen das noch etwas passiert.
- Folgende Benutzer bedankten sich beim Autor BitDoctor für den Beitrag (Insgesamt 2):
- d'r Bastler, thowe
Wer ist online?
Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste