Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
SPEZIAL: neuer flexibler Fortschrittsbalken (ProgressBar)
zurück: Dynamischer Urlaubsantrag - Urlaubsplaner - Jahresurlaub weiter: Dateioperationen mit der SHFileOperation-Funktion Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Tutorial Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
Ralf_AM
Wat? Wie? Wieso?


Verfasst am:
08. Okt 2013, 13:59
Rufname: Ralf
Wohnort: Amberg


SPEZIAL: neuer flexibler Fortschrittsbalken (ProgressBar) - SPEZIAL: neuer flexibler Fortschrittsbalken (ProgressBar)

Nach oben
       Version: Office 2003

[ An english version of this text/description is inside the ZIP file (vba_Information:EN.txt) ]

Hi,

nachdem ich es schon ein paar mal angekündigt habe, ist es nun endlich
geschafft - war doch teilweise komplizierter als ich dachte.

Ich habe festgestellt, dass es unter Office keinen flexiblen und an die
eigenen Wünsche anpassbaren Fortschrittsbalken gibt. Zudem wird ein
Fortschrittsbalken in den allermeisten Fällen durch eine Benutzeraktion
wie dem Klick auf ein Steuerelement oder eine Zelle/Zellbereich ausgelöst.
Daher habe ich nun eine neue Fortschrittsanzeige entwickelt, was mich so
einiges an Zeit und Nerven gekostet hat.

Screenshot am Ende des Textes

Dieser neue Fortschrittsbalken (ProgressBar) ist als Klasse ausgeführt und
arbeitet mit Steuerelementen auf einem Arbeitsblatt (NICHT Userform)

Folgende Möglichkeiten stehen zur Verfügung:
I) Anwendbar mit folgenden ActiveX-Controls (Steuerelementen):
"Label", "CommandButton", "TextBox", "ListBox", "ComboBox", "Image",
"ToggleButton", "CheckBox", "OptionButton", "SpinButton", "ScrollBar"

II) Positionierung:
- Als Overlay über dem Steuerelement
- Angedockt ans Steuerelement (rechts, links, oben, unten)

III) Laufrichtung des Balkens:
Links-nach-Rechts, Rechts-nach-Links, Oben-nach-Unten, Unten-nach-Oben

IV) Zählrichtung der Fortschrittsanzeige:
"Aufwärts" (0% bis 100%), "Abwärts" (100% bis 0%)

V) Darstellung der Fortschrittsanzeige:
"Füllend" (Balken nimmt zu), "Leerend" (voller Balken nimmt ab)

VI) Einstellungen für Fortschrittsanzeige:
- Schriftgröße (4 bis 20 Punkt)
- Hintergrundfarbe (als Dezimal-, Hex-, RGB-Wert)
- Vodergrund- bzw. (Zählwert-)Textfarbe (als Dezimal-, Hex-, RGB-Wert)
- Transparenz des Balkens (0 bis 100%)
- Füllgrad des Balkens (0 bis 100%)
- Anzeige des Fortschritt-Zähltextes [0 bis 100%] (ja/nein)
- zusätzlicher Platz (0 bis 10 Punkt beidseitig) im Balken bei "Andock"-
Positionierung
- Anzahl Dezimalstellen des Fortschritt-Zähltextes (0 bis 2 Dezimalstellen)
[Anzeigen von Dezimalstellen erfolgt nur, wenn die Zählschleife entsprechend
groß ist, z.B. Schleife von 0 bis 1000 ergibt bei Balken 0-100% eine Dezimal-
Stelle - bei 0 bis 10000 ergeben sich 2 Dezimalstellen]

VII) Alle o.g. Möglichkeiten lassen sich sowohl über die Eigenschaften (Properties)
des ProgressBar-Objekts einzeln oder mithilfe der 2 Hauptfunktionen einstellen.
Alle Eigenschaften haben Standardwerte, die benutzt werden, sofern keine
Einstellung des jeweiligen Wertes vorgenommen wurde.

VIII) Veränderungen an Steuerelement(en) und ProgressBar (für erfahrene User)
Die Eigenschaften des ProgressBar-Objekts lassen sich direkt ändern
Die Eigenschaften des Steuerelement-Objekts, an das der Fortschrittsbalken
gebunden ist, lassen sich direkt über das ProgressBar-Objekt ändern.

IX) In Verbindung mit meinen Klassen "vbaMGMT_ControlSaveLB" und
"vbaMGMT_ControlSaveEB" ist eine Sicherung und Wiederherstellung aller
Eigenschaften des Steuerelements möglich [hier die Infos zu den 2 Klassen]

X) Fehlerprüfung:
Es wurde versucht, so gut wie alle möglichen Fehler beim Einsatz der bzw. dem
Schreiben von Code für die ProgressBar abzufangen und sinnvolle Fehlermeldungen
zu generieren.

XI) Die Klasse besteht aus ca. 700 Zeilen Code, davon sind jedoch nur
ca. 80 Zeilen für den Fortschrittsanzeigen-Lauf. Ich habe versucht, den Code
so kompakt und die Ausführung so schnell wie möglich zu gestalten.

XII) Für den Einsatz der ProgressBar spielt es keine Rolle, wie die Schleife,
in der die Fortschrittsanzeige erhöht/verringert wird, gestaltet ist. Sie
kann von 0 bis xx, von -yy bis 0, von -yy bis -xx, von -yy bis +xx etc. laufen.
Es können auch mehrere Fortschrittsbalken zusammen (quasi-gleichzeitig) benutzt
werden.

XIII) Auch das Starten eines Fortschrittsbalken ohne ein sichtbares Steuerelement
durch Klick in eine Zelle/Zellbereich ist möglich. Dazu muss einfach ein unsicht-
bares "Label" in der Form des gewünschten Fortschrittsbalkens angelegt werden. Beim
Klick in die gewünschte Zelle, wird dann der Fortschrittsbalken in der Größe/Form/
Position des unsichtbaren "Labels" erscheinen.

XIV) Test-Datei mit Beispielen
In der angefügten ZIP-Datei ist eine Excel-Datei mit einer Testseite, auf der ich
so einige der Möglichkeiten für die Nutzung des Fortschrittsbalkens aufzeige. Wie
ihr anhand der obigen Aufzählung sehen könnt, sind die Nutzungsvarianten jedoch fast
unbegrenzt.
In dem Test-Arbeitsblatt habe ich für alle Beispiele zusätzlich eine Timerfunktion
eingebaut, so dass ihr sehen könnt, wieviel Zeit zur Ausführung nötig ist. Zudem
eine Möglichkeit, den Fortschrittsbalken nach Beendigung automatisch nach einer
einstellbaren Zeitspanne zu löschen bzw. zu entfernen + einen Button zur manuellen
Löschung/Entfernung.
In der ZIP-Datei sind ebenso alle Module und die Klassen einzeln zum direkten Import
in eure Projekte enthalten. Außerdem die Info-Texte wie dieser hier.

XV) Wenn ihr statt "ProgressBar.Value" die Eigenschaft "Value" als Standard-Eigenschaft
nutzen wollt (so wie bei Zellen), so MUSS das Klassenmodul "clsProgressBar" importiert
werden (kein Copy&Paste des Codes), da beim Import ein in der Klasse enthaltenes
Attribut gesetzt wird (das aus dem Code beim Import entfernt wird).
Danach kann statt "ProgressBar.Value = [Wert]" einfach "ProgressBar = [Wert]" geschrieben
werden.


WICHTIG:
Bitte lest euch unbedingt die Info-Texte bzw. Kommentare im Code der einzelnen Module
gründlich durch, da dort die Arbeitsweise/Funktionen/Parameter etc. erklärt werden !!
Im Kopfbereich des Klassenmoduls der ProgressBar sind alle Eigenschaften und Methoden
vollständig aufgelistet und beschrieben.


Es wäre nett, wenn ihr mir folgendes mitteilen würdet:
- ob euch dieser neue Fortschrittsbalken überhaupt gefällt oder nutzt
- wie ihr ihn einsetzt und ob alles funktioniert
- ob Fehler auftreten, die noch nicht mit einer Fehlermeldung abgefangen werden
- wenn ihr inhaltliche oder Rechtschreibungsfehler in den Texten/Kommentaren findet
- ob ihr etwas vermisst oder etwas unklar ist

Wenn von genug Leuten gewünscht und ich ausreichend Lust und Zeit dazu habe, dann passe
ich das ganze noch zur Nutzung in einer Userform an.


So, nun wünsche ich euch viel Spaß beim Testen und Einsetzen der ProgressBar.

Gruß
Ralf




zr_ProgressBar.zip
 Beschreibung:

Download
 Dateiname:  zr_ProgressBar.zip
 Dateigröße:  177.67 KB
 Heruntergeladen:  139 mal

Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Diese Seite Freunden empfehlen

Seite 1 von 1
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Excel Formeln: Werte zusammenfassen und in neuer Tabelle anzeigen 0 Thor77 195 17. Apr 2012, 21:58
Thor77 Werte zusammenfassen und in neuer Tabelle anzeigen
Keine neuen Beiträge Excel Formeln: Name soll Wert annehmen und in neuer Zelle wiedergeben 4 ads82 591 16. Jan 2012, 13:18
ads82 Name soll Wert annehmen und in neuer Zelle wiedergeben
Keine neuen Beiträge Excel Formeln: Doppelte Einträge in neuer Tabelle zusammenfassen 2 snuppi69 520 03. Jul 2011, 22:21
snuppi69 Doppelte Einträge in neuer Tabelle zusammenfassen
Keine neuen Beiträge Excel Formeln: daten mehrerer tabellenblätter in neuer datei addieren 2 JB-654 2030 06. Apr 2011, 12:33
mackes984 daten mehrerer tabellenblätter in neuer datei addieren
Keine neuen Beiträge Excel Formeln: Zelle fortschreiten in neuer Tabelle/Registerkarte 7 Marc 2011 202 16. Feb 2011, 11:34
Gast Zelle fortschreiten in neuer Tabelle/Registerkarte
Keine neuen Beiträge Excel Formeln: Wert aus A2 kopieren bis in A# neuer Wert kommt 3 MrMonopoly 510 05. Feb 2011, 12:33
MrMonopoly Wert aus A2 kopieren bis in A# neuer Wert kommt
Keine neuen Beiträge Excel Formeln: ist gleich Funktion und einfügen neuer Felder 4 crudi 397 18. Dez 2010, 22:14
crudi ist gleich Funktion und einfügen neuer Felder
Keine neuen Beiträge Excel Formeln: Wiederholungen in neuer Tabelle mit Verschieben darstellen 5 Joergen 209 17. Dez 2010, 14:43
Gast Wiederholungen in neuer Tabelle mit Verschieben darstellen
Keine neuen Beiträge Excel Formeln: flexibler SVerweis 4 herbert500 405 10. Aug 2010, 09:32
herbert500 flexibler SVerweis
Keine neuen Beiträge Excel Formeln: Spaltenwerte auslesen (>0) und in neuer Liste anlegen 2 Matzelinho 716 12. Nov 2009, 18:11
Gast Spaltenwerte auslesen (>0) und in neuer Liste anlegen
Keine neuen Beiträge Excel Formeln: Gleiche Positionen in neuer Tabelle zusammenfassen 7 Lexi 1777 25. Okt 2009, 21:36
Gast Gleiche Positionen in neuer Tabelle zusammenfassen
Keine neuen Beiträge Excel Formeln: Excel, Spalten zusammenführen + Neuer Text 11 meyer 2310 08. Okt 2009, 19:26
meyer Excel, Spalten zusammenführen + Neuer Text
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: HTML Editor Forum