30.07.2021, 15:22
Hallo meine Lieben,
ich muss im Rahmen meiner Bachelorarbeit Daten prüfen. Es geht um die Daten einer Wetterstation. Dort werden in 5 min Abständen diverse Parameter wie Luftfeuchte, Temperatur usw. gemessen.
In einem Schritt soll ich überprüfen, ob ein Messwert über einen längeren Zeitraum unverändert gemessen wird. Also quasi
19.10 Uhr: Luftfeuchte 90%
19.15 Uhr : Luftfeuchte 90 %
19.20 Uhr: Luftfeuchte 90 %
usw.
Bei der Luftfeuchte sind 6 Stunden zweifelhaft und 12 Stunden fehlerhaft. Diese zeitlichen Grenzen variieren für jeden Parameter
Ich habe dazu schon einen Code in VBA gefunden, allerdings ermöglicht dieser mir ledglich herauszufinden ob es Zeiträume gibt, die länger als die oben genannten Grenzen sind. Ich müsste aber noch wissen wann diese Zeiträume waren. In Zeile C sieht man wie Ecxel zählt. Die 6 in C8 zählt die identischen Werte von B8-B13. Unter dem Bild ist auch der code hinterlegt. Falls in der Zeile C eine Zahl größer 72 steht heißt das, dass länger als 6 Stunden dersselbe Messwerte gemessen wurde. Dann wird das in Zeile D2/E2 gezählt. (6 Stunden * 60 min / 5 (1 Messung pro 5 Minuten). Es gab also 13 zweifelhaft Zeiträume, die ich aber nicht finden kann. Weil es so viele DAten sind 105000 Zeilen.
Es wäre super hilfreich, wenn mir jemand sagen könnte wie ich die 13 Zeiträume (D2) finden kann, die länger als 6 Stunden den selben Wert gemessen haben.
Ein Bildausschnit befindet sich im Anhang.
[
Bild bitte so als Datei hochladen: Klick mich!
]
Public Sub Vorkommen()
Dim lZeile_Q As Long
Dim lZeile_Z As Long
Dim vWert As Variant
vWert = Cells(1, 2).Value ' den ersten Wert aus Spalte B speichern
lZeile_Z = 1
For lZeile_Q = 1 To Cells(Rows.Count, 2).End(xlUp).Row
If Cells(lZeile_Q, 2).Value = vWert Then
Cells(lZeile_Z, 3).Value = Cells(lZeile_Z, 3).Value + 1
Else
lZeile_Z = lZeile_Z + 1
Cells(lZeile_Z, 3).Value = Cells(lZeile_Z, 3).Value + 1
vWert = Cells(lZeile_Q, 2).Value
End If
Next lZeile_Q
End Sub
Vielen Dank für jede Hilfe im voraus!!!
LG Siggi
ich muss im Rahmen meiner Bachelorarbeit Daten prüfen. Es geht um die Daten einer Wetterstation. Dort werden in 5 min Abständen diverse Parameter wie Luftfeuchte, Temperatur usw. gemessen.
In einem Schritt soll ich überprüfen, ob ein Messwert über einen längeren Zeitraum unverändert gemessen wird. Also quasi
19.10 Uhr: Luftfeuchte 90%
19.15 Uhr : Luftfeuchte 90 %
19.20 Uhr: Luftfeuchte 90 %
usw.
Bei der Luftfeuchte sind 6 Stunden zweifelhaft und 12 Stunden fehlerhaft. Diese zeitlichen Grenzen variieren für jeden Parameter
Ich habe dazu schon einen Code in VBA gefunden, allerdings ermöglicht dieser mir ledglich herauszufinden ob es Zeiträume gibt, die länger als die oben genannten Grenzen sind. Ich müsste aber noch wissen wann diese Zeiträume waren. In Zeile C sieht man wie Ecxel zählt. Die 6 in C8 zählt die identischen Werte von B8-B13. Unter dem Bild ist auch der code hinterlegt. Falls in der Zeile C eine Zahl größer 72 steht heißt das, dass länger als 6 Stunden dersselbe Messwerte gemessen wurde. Dann wird das in Zeile D2/E2 gezählt. (6 Stunden * 60 min / 5 (1 Messung pro 5 Minuten). Es gab also 13 zweifelhaft Zeiträume, die ich aber nicht finden kann. Weil es so viele DAten sind 105000 Zeilen.
Es wäre super hilfreich, wenn mir jemand sagen könnte wie ich die 13 Zeiträume (D2) finden kann, die länger als 6 Stunden den selben Wert gemessen haben.
Ein Bildausschnit befindet sich im Anhang.
[
Bild bitte so als Datei hochladen: Klick mich!
]
Public Sub Vorkommen()
Dim lZeile_Q As Long
Dim lZeile_Z As Long
Dim vWert As Variant
vWert = Cells(1, 2).Value ' den ersten Wert aus Spalte B speichern
lZeile_Z = 1
For lZeile_Q = 1 To Cells(Rows.Count, 2).End(xlUp).Row
If Cells(lZeile_Q, 2).Value = vWert Then
Cells(lZeile_Z, 3).Value = Cells(lZeile_Z, 3).Value + 1
Else
lZeile_Z = lZeile_Z + 1
Cells(lZeile_Z, 3).Value = Cells(lZeile_Z, 3).Value + 1
vWert = Cells(lZeile_Q, 2).Value
End If
Next lZeile_Q
End Sub
Vielen Dank für jede Hilfe im voraus!!!
LG Siggi