.
.
.
.
.
.

Auftragsprogrammierung

Projektanfrage über Web Formular   per Online-Formular 
Projektanfrage über E-Mail  Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein!
Projektanfrage per Telefon  +49 (0)151 / 164 55 914
Projektanfrage weitere Informationen  weitere Informationen 

Sie benötigen Hilfe oder Unterstützung? Nutzen Sie für Ihre Anfrage unser Online-Formular, senden Sie uns eine Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein!  oder rufen Sie uns einfach an.

Für kurze Fragen und einfachere Problemlösungen bieten wir unseren Quick-Support an.

Referenzen

 Bosch 
  T-Systems
  Hagebau
  Siemens
 Areva  VW
 Haufe-Lexware  British American Tobacco
  nagel group farbe
 

Fortschrittsbalken in Statusleiste anzeigen

Wenn es mal wieder etwas länger dauert, ist es sinnvoll, wenn der Anwender darüber informiert wird. Dies kann beispielsweise über eine kleine Anzeige in der Statusleiste unterhalb des Tabellenblatts erfolgen. In diesem Artikel zeigen wir Ihnen, wie sich das relativ einfach umsetzen lässt.

Zur Erläuterung habe ich eine kleine Beispieldatei aufgebaut, in welche einfach fortlaufende Zahlen eingetragen werden. Darüber hinaus ist zur Steuerung der Programmgeschwindigkeit eine Schleife integriert, so dass die Anzeige des Fortschrittsbalkens gut verfolgt und getestet werden kann. Die Geschwindigkeit lässt sich über einen Schieberegler von 1 bis 100 regulieren, siehe Abbildung 1.


Abbildung 1

Über einen Klick auf die Schaltfläche "Start" wird die Prozedur gestartet. Dabei werden die Zahlen ab Zeile 10 eingetragen und die Fortschrittsanzeige in der Statusleiste eingeblendet.

Ein weiteres kleines Feature dieser Beispieldatei ist, dass Sie für die Anzeige des Fortschrittbalkens verschiedene Zeichen über ein Dropdown-Menü festlegen können, siehe Abbildung 2.


Abbildung 2

Die zur Auswahl verfügbaren Zeichen sind auf einem zweiten Tabellenblatt mit dem Blattnamen "Zeichen" hinterlegt. Insgesamt stehen dort 20 verschiedene Zeichen zur Auswahl, welche auch beliebig geändert werden können. Als einzige Einschränkung gilt, dass es sich um ein Zeichen aus dem ASCII-Zeichensatz handeln muss, siehe Abbildung 3.


Abbildung 3

Damit das ausgewählte Zeichen im Fortschrittsbalken angezeigt wird, sind folgende VBA-Prozeduren erforderlich. Erfassen Sie diese bitte in einem leeren Codemodul:

Public bln As Boolean
Public Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

Sub Start_Laufschrift()
'** Fortschrittsbalken in Statusleiste

'** Dimensionierung der Variablen
Dim lngSpeed As Long
Dim iCounter As Integer
Dim lngAnz As Long 'Anzahl Punkte

'** Zählerstand setzen
iCounter = 1

'** Anzahl definieren
lngAnz = 15

'** Löschen der Einträge
ActiveSheet.Range("A10:ZZ10000").ClearContents
    
'** Ermittlung der Anzahl durchläufe
  '** Spalten durchlaufen
  For s = 1 To lngAnz
    
    '** Zeilen durchlaufen
    For Z = 10 To 1000
      '** Werte eintragen
      ActiveSheet.Cells(Z, s).Value = Z * s
    Next Z
    
    '** Statusleiste aktualisieren
    StatusAnzeige "Fortschritt: ", iCounter / lngAnz
    
    '** Nur zu Testzwecken!!
    Sleep Abs(ActiveSheet.Range("F4").Value - 99) * 5
    
    '** Zähler erhöhen
    iCounter = iCounter + 1
  
    '** Zellbearbeitung ermöglichen (Optional)
    DoEvents
  
  Next s

'** Bestätigung ausgeben
MsgBox "Aufgabe erfolgreich erledigt!", vbInformation, "Hinweis"

'** Statusleiste zurücksetzen
Application.StatusBar = False

End Sub


Private Function StatusAnzeige(sTxt As String, sWert As Single)
'** Dimensionierung der Variablen
Dim iWert As Integer, iWiederh As Integer

With WorksheetFunction
  iWert = .Round(sWert, 2) * 100
  iWiederh = Int(iWert / 10)
  Application.StatusBar = sTxt & .Rept("", 10 - iWiederh) & "" & iWert & "%" & _
    " " & .Rept(Chr(Sheets("Zeichen").Range("D3").Value), iWiederh)
End With

End Function

Wie Sie sehen wird vor dem Balken noch der Fortschritt in Prozent ausgegeben, vergl. Abbildung 4.


Abbildung 4

Wenn Sie über das DropDown-Menü ein anderes Zeichen auswählen, so wird dieses sofort beim nächsten Start in der Statusleiste verwendet, siehe Abbildung 5.


Abbildung 5

Die Beispieldatei können Sie unter dem folgenden Link kostenlos herunterladen. Viel Spaß beim Probieren.

 

Drucken E-Mail

Relevante Artikel

  • Übersicht aller VBA Schlüsselwörter

    108000b Nachfolgend eine Übersicht aller VBA-Schlüsselwörter   A B 1 Deutsch Englisch 2     3 Abs Abs 4 AktiviereAnw AppActivate 5 AktVerz CurDir 6 Alle...

  • Anzahl Formeln in einer Arbeitsmappe ermitteln

    Mit Hilfe dieser Prozedur werden alle Formeln einer Arbeitsmappe ermittelt werden. Dies kann beispielsweise für statistische Zwecke nützlich sein. Die...

  • Sicherheitseinstellungen für Makros

    Nachfolgend erhalten Sie eine Übersicht über die Einstellmöglichkeiten der Makrosicherheit in den unterschiedlichen Excel-Versionen: Die jeweiligen...

  • Versionen von Windows und Excel ermitteln

    Mit dem folgenden Makro können Sie ganz einfach die installierte Windows- und Excel-Version ermitteln. {code}Sub Info_Windows_Excel()'Ermittlung der installierten Windows- und der...

  • Diagramm-Skalierung per VBA ändern

    Excel skaliert die Größenachse (Y-Achse) bei einem Diagramm standardmäßig automatisch. Natürlich kann der Maxi- und Min-Wert auch manuell für das...

Projektanfrage

 Sie benötigen eine Auftragsprogrammierung?
 Oder suchen Unterstützung bei der 
 Lösungsfindung?

  Nutzen Sie unser Anfrageformular

  Jetzt anrufen unter 0151 / 164 55 914

 Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein! Projektanfrage per Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein! senden

  Weitere Informationen

sitepanel question2

P
R
O
J
E
K
T
A
N
F
R
A
G
E
Ihre Zufriedenheit ist unser Ziel, deshalb verwenden wir Cookies. Mit diesen ermöglichen wir, dass unsere Webseite zuverlässig und sicher läuft, wir die Performance im Blick behalten und Sie besser ansprechen können. Cookies werden benötigt, damit technisch alles funktioniert und Sie auch externe Inhalte lesen können. Des Weiteren sammeln wir unter anderem Daten über aufgerufene Seiten, getätigte Käufe oder geklickte Buttons, um so unser Angebot an Sie zu Verbessern. Mehr über unsere verwendeten Dienste erfahren Sie unter „Weitere Informationen“. Mit Klick auf „Akzeptieren“ erklären Sie sich mit der Verwendung dieser Dienste einverstanden. Ihre Einwilligung können Sie jederzeit mit Wirkung auf die Zukunft widerrufen oder ändern.