Страницы: 1
RSS
Подставлять в цикле значения объявленных цветов
 
Добрый день.
Есть список цветов для условного форматирования  которое объявляю до цикла. Потом в зависимости от шага цикла хочу чтобы подставлялись значения объявленных цветов.
Но выдает ошибку при подставке составной/определении переменной..
Код
Sub Макрос88883()
'Список цветов
COL1 = 10027008
COL2 = 16711680
COL3 = 2704713
COL4 = 8014176
COL5 = 411543
COL6 = 8421504
COL7 = 3969910
COL8 = 682978
COL9 = 10192433
COL10 = 5540500
COL11 = 14136213
COL12 = 13082801
COL13 = 14336204

  Range("A6:W10").Select
    
    For i = 1 To 10
    Selection.FormatConditions.Add Type:=xlExpression, Formula1:="=И(" & i & "=$t6;$W6=""Да"")"
    Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
    With Selection.FormatConditions(1).Interior
        .PatternColorIndex = xlAutomatic
   
    ' ОШИБКА ЗДЕСЬ Составная запись подставки цветов
        .ThemeColor = "COL" & 13 - i
        .TintAndShade = 0   
    End With
    Selection.FormatConditions(1).StopIfTrue = False
Next i
End Sub
Изменено: Максим Колесников - 27.01.2021 12:52:01
Не внимателен при вводе текста хорошо что есть F7
 
Значения цветов - в массив, а не в отдельные переменные
Код
    aCol = Array(10027008, 16711680, 2704713, 8014176, 411543, 8421504, _
                    3969910, 682978, 10192433, 5540500, 14136213, 13082801, 14336204)
                    
    For i = 1 To 10
        ' ------------
        .ThemeColor = aCol(12 - i)
        ' ------------
    Next i
 
Максим Колесников, здравствуйте
Вам массив нужен: вместо col1,2…
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
не удается ни каким способом, ошибка .
Хотя окно сообщения выдает значение правильно.
Не внимателен при вводе текста хорошо что есть F7
 
Заменил
Код
.ThemeColor = aCol(12 - i)
на
Код
.Color = aCol(12 - i)

и готово. ВСЕМ СПАСИБО
Не внимателен при вводе текста хорошо что есть F7
Страницы: 1
Наверх