AW: DoWhile rattenschnell @Klaus-Dieter
28.05.2009 18:00:30
MBorn
Hallo Klaus-Dieter,
danke für das Angebot. Hier wäre also ein kleines Beispiel:
Sub Liste_DatumZeit_zusammenfügen2()
Application.Calculation = xlCalculationManual
Zeitspalte = 7
For i = 2 To Range("A350000").End(xlUp).Row
If Cells(i, 3) = Cells(i - 1, 3) Then
Zeit = Cells(i, 2)
Cells(i, Zeitspalte) = Cells(i, 1) + hour(Zeit) / 24 + (Minute(Zeit) + IIf(Second(Zeit) > _
30, 1, 0)) / 1440
Zeit = Cells(i, Zeitspalte)
Bisz5 = IIf(i 5 _
And Cells(i, 3) = Cells(i - z5, 3) Then
Exit For
End If
Next z5
Cells(i, 5) = IIf(z5 _
30, 1, 0)) / 1440
Cells(i, 5) = i
End If
Next i
Application.Calculation = xlCalculationAutomatic
End Sub
Kurze Erklärung dazu: Erst werden Datum (Spalte A) und Zeit (Spalte B) in Spalte G zusammengefügt.
In Spalte G stehen dann Datum/Zeit-Angaben in unregelmäßigen Minutenabständen, wobei manchmal die selbe Zeit (gleiche Minute) in mehreren Zeilen steht, manchmal in einer, manchmal in keiner. In Spalte E soll die Zeilennummer eingetragen werden, in der die Zeit steht welche von Spalte G, aktuelle Zeile genau 5 Minuten zurück liegt. Also, in G700 steht zum Beispiel 11:25 und in G630 steht 11:20. Dann müßte in Zeile E600 die Zahl 70 stehen.
Wenn Du mir verraten könntest, wie ich das beschleunigen kann, wäre ich Dir mindestens sehr
dankbar.
Gruß,
Born