Hallo zusammen
ich habe ein Problem in meinem geschriebenen Algorithmus, der zur Datenauswertung verwendet wird.
Folgender Fall: Es sollen Daten aus einer Eingabetabelle ausgelesen werden und damit gerechnet werden, falls Daten fehlen (z.b. 28.09. sind keine Daten vorhanden), soll der Algorithmus selbstständig Daten berechnen. Soweit so gut, die Berechnungen und Dimensionierungen etc sind alle fehlerfrei. Das Problem was sich allerdings ergibt ist: Zwischen Tag 214 und 226 fehlen Werte, der Algorithmus errechnet also in diesem Zeitraum Daten, aber springt danach nicht mehr zurück, sodass ab diesem Zeitpunkt ausschließlich eigene Daten errechnet werden. Was ist das Problem? Ich glaube, dass das Problem im folgenden Bereich des Codes liegen könnte: (in der Ermittlung der Messlücken)
'Tagessprung zwischen den Jahren
If (Year(datumZelleNextSchritt) > Year(datumZelle) And dayNextSchritt + 365 - day > 1) Or dayNextSchritt - day > 1 Or (dayNextSchritt - day = 1 And 24 - tWOZ + tNaechsterZeitschritt > 0.3) Or tNaechsterZeitschritt - tWOZ > 0.2 Then
If (Year(datumZelleNextSchritt) > Year(datumZelle)) And dayNextSchritt + 365 - day > 1 Then
'Bsp: fehlendeTage = (1+365)-(364+1) =1 (31.12. wurde nicht beachtet -> es fehlt 1 Tag)
fehlendeTage = (dayNextSchritt + 365) - (day + 1)
fehlendeStundenAktuellerTag = 24 - tWOZ
fehlendeStundenFolgenderTag = 1 * tNaechsterZeitschritt
ElseIf dayNextSchritt - day > 1 Then
'Tagessprung innerhalb des Jahres
fehlendeTage = dayNextSchritt - day
fehlendeStundenAktuellerTag = 24 - tWOZ
fehlendeStundenFolgenderTag = 1 * tNaechsterZeitschritt
'Sprung zwischen 2 Tagen
ElseIf (dayNextSchritt - day = 1 And 24 - tWOZ + tNaechsterZeitschritt > 0.3) Then
fehlendeTage = 0
fehlendeStundenAktuellerTag = 24 - tWOZ
fehlendeStundenFolgenderTag = 1 * tNaechsterZeitschritt
'Sprung innerhalb eines Tages
ElseIf tNaechsterZeitschritt - tWOZ > 0.2 Then
fehlendeTage = 0
fehlendeStundenAktuellerTag = tNaechsterZeitschritt - tWOZ
fehlendeStundenFolgenderTag = 0
End If
Else: Messdaten Berechnung (funktioniert soweit)
Ich freue mich auf Antworten oder Tips, wo ich im Code suchen sollte. VG
|