На скриншоте вы можете увидеть некоторую часть моей таблицы.

В столбцах A: DI вводится некоторое значение, значение в столбце B ищется в строке 1, а значение из C: D - в поискев строке 2. После этого он окрашивает ячейки в красный цвет, находящийся в заданном диапазоне.
Примеры "Test" и "Test2" работают нормально.Но пример 3. и 4. не работает с моим кодом, потому что указанные числа не находятся в диапазоне ("E2: AM2").
Мой вопрос сейчас, как я могу найти Start- иEndtemp, если есть такие числа, как 5,15,25,152,87, ...
Вот мой код:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim ws As Worksheet
Dim a As Long
Dim turnCol As Range
Set ws = ThisWorkbook.Worksheets(1)
With ws
If Not Application.Intersect(Range("D:D"), Range(Target.Address)) Is Nothing Then
a = ActiveCell.Row
Turns = "Turn " & .Cells(a, 2).Value
StartTemp = Int(CDec(.Cells(a, 3).Value))
EndTemp = Int(CDec(.Cells(a, 4).Value))
Set turnCol = .Range("1:1").Find(What:=Turns)
Set startCol = .Range(.Cells(2, turnCol.Column), .Cells(2, turnCol.Column + 35)).Find(What:=StartTemp)
Set endCol = .Range(.Cells(2, turnCol.Column), .Cells(2, turnCol.Column + 35)).Find(What:=EndTemp)
.Range(.Cells(a, startCol.Column), .Cells(a, endCol.Column)).Interior.Color = RGB(255, 0, 0)
End If
End With
End Sub