Последна актуализация: август 2021 г.; Microsoft Excel 365, 2019, 2016.
В днешния урок за автоматизация на VBA за Excel ще научим как можем програмно да променим цвета на клетка въз основа на стойността на клетката.
Можем да използваме тази техника, когато разработваме просто табло за състояние например.
Настройвам
Ако все още не разработвате в Excel, препоръчваме да разгледате нашето въвеждащо ръководство за макроси на Excel . По-конкретно, трябва да се уверите, че разделът Developer е наличен във вашата лента на Microsoft Excel, тъй като ще го използвате, за да напишете някакъв прост код.
- Отворете Microsoft Excel. Имайте предвид, че кодът, предоставен в този урок, се очаква да функционира в Excel 2007 и по-нататък.
- В празен работен лист добавете следната таблица:

- Сега продължете и дефинирайте наименуван диапазон, като натиснете: Формули>>Дефиниране на име
![Как да задам цвят на клетка в Excel според условие с VBA? Как да задам цвят на клетка в Excel според условие с VBA?]()
Промяна на вътрешния цвят на клетката въз основа на стойност с Cell.Interior.Color
- Натиснете записа за разработчик в лентата.
- Натиснете Visual Basic или Alt+F11, за да отворите своя VBA редактор за разработчици.
- След това маркирайте работния лист, в който искате да изпълните кода си. Като алтернатива изберете модул, който има вашия VBA код.
- Продължете и поставете този код. В нашия пример ще модифицираме вътрешния цвят на диапазон от клетки до специфични стойности на клетката RGB, съответстващи на червения, жълтия и зеления цвят.
- По-конкретно ние използваме метода на Excel VBA Cell.Interior.Color и предаваме съответната RGB стойност или цветен индекс.
Sub Color_Cell_Condition()
Dim MyCell As Range
Dim StatValue As String
Dim StatusRange As Range
Set StatusRange = Range("Status")
For Each MyCell In StatusRange
StatValue = MyCell.Value
Select Case StatValue
Case "Progressing"
MyCell.Interior.Color = RGB(0, 255, 0)
Case "Pending Feedback"
MyCell.Interior.Color = RGB(255, 255, 0)
Case "Stuck"
MyCell.Interior.Color = RGB(255, 0, 0)
End Select
Next MyCell
End Sub
- Изпълнете вашия код – или чрез натискане на F5 или Run>> Run Sub / UserForm.
- Ще забележите, че таблото за управление на състоянието е попълнено, както е показано по-долу:
![Как да задам цвят на клетка в Excel според условие с VBA? Как да задам цвят на клетка в Excel според условие с VBA?]()
- Запазете кода си и затворете вашия VBA редактор.