Sub Durchschnittstemperaturen()
    Dim letzteZeile As Long
    Dim aktuellesDatum As Date
    Dim tempSumme As Double
    Dim tempAnzahl As Integer
    Dim durchschnittTemp As Double
    Dim minTemp As Double
    Dim maxTemp As Double
    Dim i As Long
    Dim aktuelleZeile As Long
    
    ' Finde die letzte Zeile in Spalte A
    letzteZeile = Cells(Rows.Count, 1).End(xlUp).Row
    
    ' Setze die Startzeile für das erste Datum in Spalte D
    aktuelleZeile = 2
    
    ' Überschriften in Spalte D und E setzen
    Cells(1, 4).Value = "Tag der Messung"
    Cells(1, 5).Value = "Durchschnittstemperatur"
    Cells(1, 6).Value = "Minimaltemperatur"
    Cells(1, 7).Value = "Maximaltemperatur"
    
    ' Durchlaufe die Zeilen und berechne den Durchschnitt für jedes Messdatum
    For i = 2 To letzteZeile
        ' Überprüfe, ob das aktuelle Datum in Spalte B sich geändert hat
        If CDate(Cells(i, 2).Value) <> aktuellesDatum Then
            ' Wenn es nicht der erste Durchlauf ist
            If aktuellesDatum <> 0 Then
                ' Berechne den Durchschnitt für das vorherige Messdatum
                durchschnittTemp = tempSumme / tempAnzahl
                ' Gib das Datum in Spalte D aus
                Cells(aktuelleZeile, 4).Value = aktuellesDatum
                ' Gib den Durchschnitt in Spalte E aus
                Cells(aktuelleZeile, 5).Value = durchschnittTemp
                ' Berechne und gib die minimale Temperatur aus
                Cells(aktuelleZeile, 6).Value = minTemp
                ' Berechne und gib die maximale Temperatur aus
                Cells(aktuelleZeile, 7).Value = maxTemp
                ' Gehe zur nächsten Zeile
                aktuelleZeile = aktuelleZeile + 1
            End If
            ' Setze das aktuelle Datum
            aktuellesDatum = CDate(Cells(i, 2).Value)
            ' Setze die Summe, Anzahl, Mindest- und Maximaltemperatur zurück für das neue Datum
            tempSumme = 0
            tempAnzahl = 0
            minTemp = CDbl(Cells(i, 1).Value)
            maxTemp = CDbl(Cells(i, 1).Value)
        Else
            ' Vergleiche die Temperatur mit der bisherigen minimalen Temperatur
            If CDbl(Cells(i, 1).Value) < minTemp Then
                minTemp = CDbl(Cells(i, 1).Value)
            End If
            ' Vergleiche die Temperatur mit der bisherigen maximalen Temperatur
            If CDbl(Cells(i, 1).Value) > maxTemp Then
                maxTemp = CDbl(Cells(i, 1).Value)
            End If
        End If
        ' Addiere die Temperatur zum aktuellen Durchschnitt
        tempSumme = tempSumme + CDbl(Cells(i, 1).Value)
        tempAnzahl = tempAnzahl + 1
    Next i
    
    ' Füge das letzte Datum, den Durchschnitt sowie die minimale und maximale Temperatur hinzu
    Cells(aktuelleZeile, 4).Value = aktuellesDatum
    If tempAnzahl > 0 Then
        Cells(aktuelleZeile, 5).Value = tempSumme / tempAnzahl
        Cells(aktuelleZeile, 6).Value = minTemp
        Cells(aktuelleZeile, 7).Value = maxTemp
    End If
End Sub


