Hallo,
ich habe eine lange Liste von Sensordaten, die ich jetzt auf das Wichtigste reduzieren möchte. Dazu möchte ich alles was zwischen den Schlagwörtern "beendet" und "Testnummer" steht, gelöscht wird. Die Zeilen mit den beiden Schlagwörtern sollen angezeigt werden.
Damit nicht versehentlich bereits angepasst Abschnitte gelöscht werden, habe ich eine IF-Abfrage eingebaut, sobald "ZeilennummerTestnummer" und "ZeilennummerBeendet" untereinander sind, dann nichts gelöscht werden darf. Das funktioniert beim ersten Mal ganz gut, aber sobald die beiden Zeilen untereinander sind, bleibe ich in der IF-Abfrage hängen und kommen nicht mehr raus. Ich weiß nicht wie ich den Code aufbauen soll, wenn die Zeilen untereinandner sind, der Code zum nächsten relevanten Punkt springt. Kann mir bitte jemand weiterhelfen?
Code:
Sub entfernen()
Dim Fundzelle1 As Range
Dim Fundzelle2 As Range
Dim ZeilennummerBeendet As Integer
Dim ZeilennummerTestnummer As Integer
Dim wksT As Worksheet
Dim Counter As Long
Dim Durchlauf As Long
Dim n As Long
n = 28
Set wksT = ActiveWorkbook.Worksheets("Tabelle4")
With ActiveSheet.Columns(1)
For Counter = 1 To n Step 1
'ZeilennummerPreis = 0
'ZeilennummerErgebnis = 0
Set Fundzelle1 = .Find(What:="beendet", After:=ActiveCell, LookIn _
:=xlFormulas, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:= _
xlNext, MatchCase:=False, SearchFormat:=False)
Set Fundzelle2 = .Find(What:="Testnummer", After:=ActiveCell, LookIn _
:=xlFormulas, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:= _
xlNext, MatchCase:=False, SearchFormat:=False)
ZeilennummerBeendet = (Fundzelle1.Rows.Row + 1)
ZeilennummerTestnummer = (Fundzelle2.Rows.Row - 1)
If (ZeilennummerTestnummer > ZeilennummerBeendet) Then
Rows(ZeilennummerBeendet & ":" & ZeilennummerTestnummer).Delete Shift:=xlUp
End If
Next Counter
End With
End Sub
Ausschnitt von den Sensordaten:
18:28:04.449 -> ICM --> roll: 0.10 pitch: -0.04 yaw: 0.31 |
18:28:04.542 -> ICM --> roll: 0.10 pitch: -0.03 yaw: 0.30 |
18:28:04.681 -> ICM --> roll: 0.10 pitch: -0.03 yaw: 0.31 |
18:28:04.775 -> ICM --> roll: 0.09 pitch: -0.02 yaw: 0.32 |
18:28:04.869 -> ICM: Test 1 beendet |
18:28:09.975 -> |
18:28:15.167 -> ICM durchgeführter Test: 1 |
18:28:15.167 -> ICM: Winkel einstellen oder Messreihe starten |
18:28:15.167 -> Taster 'Systemeinschwung' oder Taster 'Messstart' betätigen |
18:28:20.350 -> |
18:29:07.038 -> ICM: Winkel ist eingestellt, das System schwingt sich für 10s ein |
18:29:12.085 -> ICM --> roll: 0.10 pitch: -0.02 yaw: 0.32 |
18:29:12.176 -> ICM --> roll: 0.09 pitch: -0.01 yaw: 0.34 |
18:29:12.270 -> ICM --> roll: 0.09 pitch: -0.02 yaw: 0.33 |
18:29:12.363 -> ICM --> roll: 0.12 pitch: -0.03 yaw: 0.32 |
18:29:58.651 -> |
18:29:58.651 -> ICM durchgeführter Test: 1 |
18:29:58.651 -> ICM: Winkel einstellen oder Messreihe starten |
18:29:58.651 -> Taster 'Systemeinschwung' oder Taster 'Messstart' betätigen |
18:30:03.746 -> |
18:30:03.746 -> ICM Testnummer: 2 |
18:30:03.746 -> ICM --> roll: 0.54 pitch: -0.36 yaw: 0.47 |
18:30:03.840 -> ICM --> roll: 0.51 pitch: -0.35 yaw: 0.46 |
18:30:03.980 -> ICM --> roll: 0.49 pitch: -0.34 yaw: 0.45 |
18:30:23.854 -> ICM: Test 2 beendet |
18:30:28.941 -> |
18:31:26.161 -> ICM durchgeführter Test: 2 |
18:31:26.161 -> ICM: Winkel einstellen oder Messreihe starten |
18:31:26.161 -> Taster 'Systemeinschwung' oder Taster 'Messstart' betätigen |
18:31:31.261 -> |
18:31:31.261 -> ICM: Winkel ist eingestellt, das System schwingt sich für 10s ein |
18:31:36.256 -> ICM --> roll: 0.30 pitch: -0.08 yaw: 0.49 |
18:31:36.350 -> ICM --> roll: 0.30 pitch: -0.07 yaw: 0.51 |
18:31:36.444 -> ICM --> roll: 0.31 pitch: -0.05 yaw: 0.53 |
|
18:33:20.035 -> ICM durchgeführter Test: 2 |
18:33:20.035 -> ICM: Winkel einstellen oder Messreihe starten |
18:33:20.035 -> Taster 'Systemeinschwung' oder Taster 'Messstart' betätigen |
18:33:25.131 -> |
18:33:25.131 -> ICM Testnummer: 3
.
.
.
.
|
Vorab vielen Dank!
Viele Grüße
Christian
|