For Next Schleife ?
16.02.2005 16:13:25
Wolfgang
Hallo!
Mit folgendem Ausschnitt aus einem ziemlich umfangreichen Makro lasse ich mir den Mittelwert (in B8)der letzten 13 eingetragenen Werte in Spalte B anzeigen. Dies klappt auch sehr gut,allerdings kommt es zu falschen Berechnungen, wenn bei den gerechneten Werten ein Wert fehlt. Dieser wird als Null erkannt.
Ich denke, daß ich zur richtigen Berechnung sicherlich keine For Next Schleife verwenden sollte, leider reichen meine VBA- Bastelkenntnisse nicht aus dieses umzusetzen. Ich brauche also Hilfe um den Mittelwert der letzten 13 Werte in einer Spalte zu ermitteln, ohne Einbeziehung von Nullstellen.
Ich hoffe auf Hilfe.
Vielen Dank
Wolfgang
Private Sub Worksheet_Change(ByVal Target As Range)
Dim i, lZeile As Integer
Dim wert, Ergebnis As Double
If Not Intersect(Target, Range("B9:B999")) Is Nothing Then
Application.EnableEvents = False
lZeile = ActiveSheet.Cells(Rows.Count, 2).End(xlUp).Row
For i = lZeile To lZeile - 12 Step -1
wert = wert + ActiveSheet.Cells(i, 2).Value
Next i
Ergebnis = wert / 13
Ergebnis = Format(Ergebnis, "#,#0.00")
Range("B8") = Ergebnis
Application.EnableEvents = True
End If
End Sub