progreebar
04.11.2005 16:59:05
walcarre
Ich möchte eine Fortschrittsanzeige beim etwas länger dauerden Abspeichern einer Excel-Mappe aufrufen. Code :
Private Sub CommandButton8_Click()
ActiveWorkbook.Save
Dim accordReset As VbMsgBoxResult
accordReset = MsgBox("Quitter Excel ?", vbYesNo)
If accordReset = vbNo Then
Sheets("Acceuil").Select
Exit Sub
End If
Excel.Application.Quit
Application.DisplayAlerts = False
End Sub
Ich habe unten stehenden Code im Forum gefunden, schaffe es aber nicht ihn an die Speicherprozedur zu koppeln.
Option Explicit
Dim mfStep As Double
Sub HierGehtsLos()
'anstatt startLangesMakro direkt aufzurufen, Umweg über Userform
frmPB.Show
DoEvents
End Sub
Sub startLangesMakro()
Dim i As Integer
Call initPB(2000)
For i = 1 To 2000
Sheets("welcome").Range("G1") = i
Call refreshPB
Next
End Sub
Sub initPB(lTotalSteps As Long)
With frmPB
.pbx.Width = 0 'zurücksetzen
mfStep = .pb100.Width / lTotalSteps 'Schrittbreite pro Aktualisierung
End With
End Sub
Sub refreshPB()
frmPB.pbx.Width = frmPB.pbx.Width + mfStep
DoEvents
End Sub