Progressbar

Horst1945

Grünschnabel
Hallo,

ich habe in diesem Forum schon einige Hinweise über Progessbar, aber ich möchte, dass sich die Progressbar änder, wenn die Datenbak mit der Berechnung immer ein Schritt weiter ist.

Also, wenn der erste Datensatz fertig ist soll sich die Progressbar ändern und bei jedem weiteren Datensatz.

Wer kann mir einen Tipp geben, wie ich das anstellen kann****?


Horst
 
Läuft die db-aktualisierung asynchron oder werden die änderungen pro datensatz direkt von deinem programm vorgenommen?
 
In dem fall sollstest du ja wissen, wieviele datensätze du ändern willst (=progbar.max),
Dann einfach mit jedem movenext progbar.value um 1 erhöhen
 
Hallo,

ich möchte jetzt mein Anliegen noch einmal schidern:

An statt wie in den beiden ScreenShot:

Start.jpg

Start1.jpg

Start2.jpg

Anstatt dieser Function, möchte ich eine Progressbar einbinden.

Folgender Code für die Berechnung

Code:
'------------SQL für Berechnung
newJahr2 = Replace(newJahr, neujahr, oldJahr3)
oldJahr2 = Replace(oldJahr, neujahr, oldJahr3)
newJahr1 = Format$(newJahr, "\#mm\/dd\/yyyy\#")
oldjahr1 = Format$(oldJahr, "\#mm\/dd\/yyyy\#")
newJahr2 = Format$(newJahr2, "\#mm\/dd\/yyyy\#")
oldJahr2 = Format$(oldJahr2, "\#mm\/dd\/yyyy\#")
'----------Tabelle monatsumsatz
Set mon1 = New ADODB.Recordset
mon1.CursorLocation = adUseClient
mon1.Open "Delete * from monatsumsatz", conn, adOpenKeyset, adLockOptimistic
'-----------Tabelle rechoff
Set kdrs = New ADODB.Recordset
kdrs.CursorLocation = adUseClient
kdrs.Open "Select * from rechoff WHERE redatum >= " & newJahr2 _
& " AND redatum <= " & oldJahr2 _
& " ORDER by kdnr ASC", conn, adOpenKeyset, adLockPessimistic
If kdrs.RecordCount >= 1 Then
   anzahl = kdrs.RecordCount
End If
'---------Anzahl der Rechnung
If kdrs.RecordCount >= 1 Then
    kdrs.MoveFirst
    kdnr1 = kdrs.GetRows(, , "kdnr")
    kdrs.MoveFirst
End If
'Loop
If Len(txt_PARAM1) = 0 Then
    z = 0
'---------Routine Kundennummer in den Rechnungen feststellen
    kdnr = UBound(kdnr1, 2)
    For i = 0 To kdnr
        kdnr2 = kdnr1(0, i)
        If Not kdnr2 = kdnr3 Then
            kdnr3 = kdnr2
            z = z + 1
            kdBerech = berech(kdnr3)
        End If
    Next
Else
    kdBerech = berech(txt_PARAM1)
End If
cmd_Beenden.Visible = True: Label4.Visible = False: Label6.Visible = True
cmd_drucker.Visible = True


End Function

Private Function berech(kd_nr As Variant) As String
If kd_nr <> "" Then
'----------Tabelle monatsumsatz
    Set mon1 = New ADODB.Recordset
    mon1.CursorLocation = adUseClient
    mon1.Open "Select * from monatsumsatz", conn, adOpenKeyset, adLockOptimistic
'-----------Tabelle rechnung
    
    Set rs = New ADODB.Recordset
    rs.CursorLocation = adUseClient
    rs.Open "SELECT Sum(gespreis) AS NBetrag From rechnung " _
    & "WHERE rechnung.kdnr= " & "'" & kd_nr & "' AND rechnung.rechDat >=" & newJahr1 _
    & " And rechnung.rechDat <=" & oldjahr1 _
    & " And storno = false", conn, adOpenKeyset, adLockReadOnly
    If rs.RecordCount = 1 Then
        summe = IIf(IsNull(rs!nbetrag), 0, rs!nbetrag)
        summe = summe
        summe2 = (summe / 100) * 19
        summe = summe + summe2
        UProzent1 = Val(summe)
        mon1.AddNew
        mon1!monat1 = Round(summe, 2)
        mon1!von = txt_PARAM2: mon1!bis = txt_PARAM3
        mon1!kdnr = kd_nr
        summe = 0
        m = 1
    End If
    Set rs = New ADODB.Recordset
    rs.CursorLocation = adUseClient
    rs.Open "SELECT Sum(gespreis) AS NBetrag From rechnung " _
    & "WHERE rechnung.kdnr= " & "'" & kd_nr & "' AND rechnung.rechDat >=" & newJahr2 _
    & " And rechnung.rechDat <=" & oldJahr2 _
    & " And storno = false", conn, adOpenKeyset, adLockReadOnly
    If rs.RecordCount = 1 Then
        summe = IIf(IsNull(rs!nbetrag), 0, rs!nbetrag)
        summe = summe
        summe2 = (summe / 100) * 19
        summe = summe + summe2
        n = 1
    End If
'-----------
    If m = 1 Or n = 1 Then
        UProzent2 = Val(summe)
        UProzent2 = (100 * UProzent1) / UProzent2
        UProzent2 = (UProzent2 - 100)
        mon1!oldlahr = oldJahr3
        mon1!neujahr = neujahr
        mon1!Mon = thisMonth
        mon1!mon1 = thisMonth1
        mon1!monat2 = Round(summe, 2)
        mon1!von = txt_PARAM2: mon1!bis = txt_PARAM3
        mon1!kdnr = kd_nr: mon1!differenz = UProzent2
        summe = 0
        mon1.Update
    End If
End If

End Function



Kann mir jemand sagen wo ich die Progressbar (Schleife) einbinden kann .
 

Neue Beiträge

Zurück