Ich habe in einem anderen Forum diesen Lösungsansatz bekommen.
Passt soweit auch alles. Nur leider habe ich vergessen mitzuteilen, dass nicht die Tage sonder die Minuten (siehe Beispiel oben) betrachtet werden müssen.
Wie kann ich den Code jetzt umschreiben, sodass er die Minuten und nicht die Tage betrachtet ?
Vielen Dank
Sub Auffuellen()
Const Startzeile = 1 'ggfls. anpassen
Const quellspalte = 1 'dito
Const SpaltDiff = 2 'dito
Dim zeile, zielzeile, Tag As Date, Wert, i
zeile = Startzeile
zielzeile = zeile
Do
Tag = DateValue(Cells(zeile, quellspalte))
Cells(zielzeile, quellspalte + SpaltDiff) = Cells(zeile, quellspalte)
Cells(zielzeile, quellspalte + SpaltDiff + 1) = Cells(zeile, quellspalte + 1)
zielzeile = zielzeile + 1
If IsDate(Cells(zeile + 1, quellspalte)) Then
If DateDiff("d", Tag, DateValue(Cells(zeile + 1, quellspalte))) <> 1 Then
Wert = Cells(zeile, quellspalte + 1)
For i = 1 To DateDiff("d", Tag, DateValue(Cells(zeile + 1, quellspalte))) - 1
Cells(zielzeile, quellspalte + SpaltDiff) = _
DateAdd("d", i, Cells(zeile, quellspalte))
Cells(zielzeile, quellspalte + SpaltDiff + 1) = Wert
zielzeile = zielzeile + 1
Next i
End If
End If
zeile = zeile + 1
Loop Until IsEmpty(Cells(zeile, quellspalte))
End Sub
|