настройка цвета в VBA

#vba #colors

Вопрос:

Я попробовал ниже, но это не работает…

Столбец O для дома или офиса хотел бы указать, является ли столбец O домом, тогда столбец P будет заполняться цветом

 Sub colour()   If Range("O:O").Value = "Home" Then  Range("P:P").Interior.Color = RGB(222, 244, 180)   End If   End Sub  

Спасибо.

Комментарии:

1. Вам нужно просмотреть ячейки в столбце O и проверить, есть ли Value это Home . То, что вы хотите, можно легко сделать с помощью условного форматирования, хотя, должны ли вы использовать VBA?

Ответ №1:

Попробуй это

 Dim i as integar  for i = 2 to range("O" amp; Rows.Count).end(3)(1).row  if range("O" amp; i).value="Home" then range("P" amp; i).Interior.Color = RGB(222, 244, 180) Next i  

Комментарии:

1. Опечатка для integar , а также поскольку вы используете его для перебора строк, вы должны использовать Long тип, чтобы избежать переполнения.

Ответ №2:

Используя условное форматирование, это можно сделать очень легко: просто отметьте ячейки в столбце «P», которые вы хотите выделить, и используйте условное форматирование , основанное на формуле =$O1="Home" , как показано на следующем снимке экрана:

введите описание изображения здесь