Dim
dblPV
As
Double
Dim
dblLast
As
Double
Dim
dblEV
As
Double
Dim
dblUeberschuss
As
Double
Dim
dblEinspeise
As
Double
Dim
dblBezug
As
Double
Dim
dblSpeicher
As
Double
For
i = 1
To
35041
dblPV =
CDbl
(PV(i, 1))
dblLast =
CDbl
(Last(i, 1))
dblEV =
CDbl
(EV(i, 1))
dblUeberschuss =
CDbl
(Ueberschuss(i, 1))
dblEinspeise =
CDbl
(Einspeise(i, 1))
dblBezug =
CDbl
(Bezug(i, 1))
dblSpeicher =
CDbl
(Speicher(i, 1))
dblUeberschuss = dblPV - dblLast
If
i = 1
Then
If
dblUeberschuss < 0#
Then
dblUeberschuss = dblUeberschuss * (-1)
dblEV = dblPV
If
dblUeberschuss >= 0#
Then
dblUeberschuss = dblUeberschuss - dblSpeicher
dblBezug = dblUeberschuss - dblSpeicher
dblSpeicher = 0#
Else
dblSpeicher = 0# - dblUeberschuss
ÜdblUeberschuss = 0#
End
If
dblEinspeise = 0#
Else
dblBezug = 0#
If
dblUeberschuss <= Max
Then
dblSpeicher = dblSpeicher + dblUeberschuss
dblEV = dblast + dblUeberschuss
dblEinspeise = 0#
Else
Platz = Max - 0#
dblSpeicher = Max
dblEV = dblLast
dblEinspeise = dblUeberschuss - Platz
End
If
End
If
Else
Dim
dblSpeicherVor
As
Double
dblSpeicherVor =
CDbl
(Speicher(i - 1, 1))
If
dblUeberschuss < 0#
Then
dblUeberschuss = dblUeberschuss * (-1)
dblEV = dblPV
If
dblUeberschuss >= dblSpeicherVor
Then
dblUeberschuss = dblUeberschuss - dblSpeicherVor
dblBezug = dblUeberschuss - dblSpeicherVor
dblSpeicher = 0#
Else
dblSpeicher = dblSpeicherVor - dblUeberschuss
dblUeberschuss = 0#
End
If
dblEinspeise = 0#
Else
dblBezug = 0#
Platz = Max - dblSpeicherVor
If
dblUeberschuss <= Platz
Then
dblSpeicher = dblSpeicherVor + dblUeberschuss
dblEV = dblLast + dblUeberschuss
dblEinspeise = 0#
Else
dblSpeicher = Max
dblEV = dblLast
dblEinspeise = dblUeberschuss - Platz
End
If
End
If
End
If
PV(i, 1) = dblPV
Last(i, 1) = dblLast
EV(i, 1) = dblEV
Ueberschuss(i, 1) = dblUeberschuss
Einspeise(i, 1) = dblEinspeise
Bezug(i, 1) = dblBezug
Speicher(i, 1) = dblSpeicher
Next
i
For
i = 1
To
35040
EV(i + 1, 1) =
CDbl
(EV(i, 1) + EV(i + 1, 1))
PV(i + 1, 1) =
CDbl
(PV(i, 1) + PV(i + 1, 1))
Bezug(i + 1, 1) =
CDbl
(Bezug(i, 1) + Bezug(i + 1, 1))
Einspeise(i + 1, 1) =
CDbl
(Einspeise(i, 1) + Einspeise(i + 1, 1))
Next
i
Worksheets(
"Tabelle1"
).Cells(5, 2) = EV(35041, 1)
Worksheets(
"Ausgabe"
).Cells(6, 2) = PV(35041, 1)
Worksheets(
"Ausgabe"
).Cells(7, 2) = EV(35041, 1)
tbEVSumme.Value = Round((EV(35041, 1)) / 1000000, 2)
tbEV.Value = Round(100 * EV(35041, 1) / PV(35041, 1), 2)
tbEinspeise.Value = Round((Einspeise(35041, 1)) / 1000000, 2)
tbBezug.Value = Round((Bezug(35041, 1)) / 1000000, 2)