Есть ли лучший способ, с точки зрения производительности, сделать это? - PullRequest
0 голосов
/ 11 мая 2019

Может быть, есть более быстрый метод обращения к ячейкам для условного форматирования?

Пример кода:

For Each cell In irow
    For i = 1 To arr_size
        If cell > start(i) - arr1(i) And start(i) > Var1 And cell <= Var2 Then
            cell.Interior.ColorIndex = 22
            Exit For
        End If
    Next i
Next cell

1 Ответ

1 голос
/ 12 мая 2019

Должно быть немного быстрее:

Dim v, rng As Range

For Each cell In irow
    For i = 1 To arr_size
        If start(i) > Var1 Then
            v = cell.Value
            If v > start(i) - arr1(i) Then 
                If v <= Var2 Then
                    If rng Is Nothing then
                        Set rng = cell
                    Else
                        Set rng = aplication.union(rng, cell)
                    End If
                    Exit For
                End If
            End If
        End If
    Next i
Next cell

If Not rng Is Nothing then rng.Interior.ColorIndex = 22
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...