Этот код выполняет расчеты на основе цвета ячейки "зеленый". К сожалению, когда он попадает в следующий ряд, например в строке «E» (как на рисунке) расчет не производится отдельно, например, только для строки C, но она принимает значения в строке C, как показано на рисунке. Как я могу переписать код таким образом, чтобы вычисление выполнялось только для строки?
Sub Schaltfläche1_Klicken()
Dim wb As Workbook, wq As Object
Dim ws As Worksheet, datDatum
Dim cell As Range
Dim c As Long, r As Long, rng As Range
With Worksheets("Tabelle1")
For c = 3 To 5
For r = 1 To 5
If .Cells(r, c).DisplayFormat.Interior.Color = vbRed Then
If rng Is Nothing Then
Set rng = .Cells(r, c)
Else
Set rng = Union(rng, .Cells(r, c))
End If
End If
Next r
If Not rng Is Nothing Then _
.Cells(8, c).Formula = "=average(" & rng.Address(0, 0) & ")"
Next c
End With
End Sub