Изменение цвета фигуры на основе определенного значения ячейки может быть интересной задачей в Excel, например, если значение ячейки в A1 меньше 100, цвет фигуры красный, если A1 больше 100 и меньше 200, цвет фигуры желтый, а когда A1 больше 200, цвет фигуры зеленый, как показано на следующем снимке экрана. Чтобы изменить цвет фигуры на основе значения ячейки, эта статья познакомит вас с методом.
Изменить цвет формы на основе значения ячейки с кодом VBA
Изменить цвет формы на основе значения ячейки с кодом VBA
Приведенный ниже код VBA может помочь вам изменить цвет формы в зависимости от значения ячейки, пожалуйста, сделайте следующее:
1. Щелкните правой кнопкой мыши вкладку листа, цвет фигуры которой вы хотите изменить, а затем выберите Просмотреть код из контекстного меню во всплывающем Microsoft Visual Basic для приложений окна, скопируйте и вставьте следующий код в пустое Модули окно.
Код VBA: изменение цвета формы в зависимости от значения ячейки:
Private Sub Worksheet_Change(ByVal Target As Range)
'Updateby Extendoffice 20160704
If Intersect(Target, Range("A1")) Is Nothing Then Exit Sub
If IsNumeric(Target.Value) Then
If Target.Value < 100 Then
ActiveSheet.Shapes("Oval 1").Fill.ForeColor.RGB = vbRed
ElseIf Target.Value >= 100 And Target.Value < 200 Then
ActiveSheet.Shapes("Oval 1").Fill.ForeColor.RGB = vbYellow
Else
ActiveSheet.Shapes("Oval 1").Fill.ForeColor.RGB = vbGreen
End If
End If
End Sub
2. А затем, когда вы вводите значение в ячейку A1, цвет фигуры будет изменен на значение ячейки, как вы определили.
Внимание: В приведенном выше коде A1 — значение ячейки, на основе которого будет изменен цвет вашей фигуры, а Овал 1 — это имя вашей вставленной фигуры, вы можете изменить их по своему усмотрению.
Лучшие инструменты для работы в офисе
Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%
- Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
- Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон…
- Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны…
- Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
- Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
- Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии…
- Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
- Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF…
- Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.
Вкладка Office: интерфейс с вкладками в Office и упрощение работы
- Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
- Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
- Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
Комментарии (21)
Номинальный 4 из 5
·
рейтинги 1
goga63 Пользователь Сообщений: 25 |
Имеется карта (нарисована фигурами) можно ли менять цвет районов в зависимости от показателей в таблице ? |
LightZ Пользователь Сообщений: 1748 |
Я думаю, что сначала нужно дать названия всем фигурам, а потом составить таблицу: название — показатель — цвет. Киса, я хочу Вас спросить, как художник — художника: Вы рисовать умеете? |
goga63 Пользователь Сообщений: 25 |
{quote}{login=LightZ}{date=11.10.2012 10:49}{thema=}{post} название — показатель — цвет.{/post}{/quote}Названия присвоил, а цвет это условное форматирование в таблице |
Какие цвета при показателях 1, 3, 4, 6, 7, 9? |
|
anvg Пользователь Сообщений: 11878 Excel 2016, 365 |
Аноним, с простым то условным форматированием не всё так просто http://www.planetaexcel.ru/forum.php?thread_id=31265 хотя и решаемо. |
ber$erk Пользователь Сообщений: 2735 |
http://www.planetaexcel.ru/forum.php?thread_id=10307
думаю Вам поможет Учимся сами и помогаем другим… |
anvg Пользователь Сообщений: 11878 Excel 2016, 365 |
Набросал вариант без условного форматирования. На листе детсады жмём кнопку для раскраски значений количества и фигур (раскрашиваются только фигуры свободного рисования, остальные игнорируются даже при наличии правильного имени). На листе цвет задаём диапазоны и цвет (можно формулами или вручную, можно и число диапазонов увеличитьуменьшить). |
goga63 Пользователь Сообщений: 25 |
Спасибо, буду разбираться. |
Здравствуйте! На основе представленного файла post_370180.zip хотел сделать карту Астраханской области из 13-ти территорий (районов и городов). Мало понимая в макросах изменил диапазон под соответствующее количество фигур. Ячейки «цвет» и «предел» на листе Цвет срабатывают правильно, а на карте окрашиваются только семь территорий из 13. Пробовал перерисовывать, переименовывать – никак. Помогите, хочу использовать эту карту в итоговом отчёте за год. И посоветуйте, как лучше вывести на печать. |
|
Юрий М Модератор Сообщений: 60588 Контакты см. в профиле |
ДОДО, а зачем Вы дублируете сообщения по разным темам? Да ещё и Правила нарушаете… |
Постараюсь больше не нарушать, это случайно получилось |
|
Осознал, проникся, однако не уверен, что всё правильно сделал colorMap30.xls |
|
anvg Пользователь Сообщений: 11878 Excel 2016, 365 |
ДОДО |
Спасибо, буду исправлять. А Енотаевский район географически делит Калмыкия, прихватившая кусок Волги, рыбаки и туристы в курсе (п.Цаган -Аман), что можно будет на схеме игнорировать. С наступающим Новым Годом! |
|
Юрий М Модератор Сообщений: 60588 Контакты см. в профиле |
|
ДОДО Гость |
#16 16.12.2012 01:30:35 А как можно перенести полученную карту в Word? Простым копированием не получается |
Окрашивание фигур в зависимости от значения в ячейке? |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
На чтение 5 мин Опубликовано 26.01.2021
Часто перед пользователями табличного редактора возникает такая задача, когда необходимо придать ячейке определенный цвет в зависимости от ее значения на рабочем листе. Существует множество способов, позволяющих реализовать эту простейшую процедуру. В статье мы детально рассмотрим все варианты, позволяющие дать цвет ячейке в зависимости от ее значения.
Содержание
- Процесс редактирования цвета в табличном редакторе
- Первый метод: использование условного форматирования
- Второй метод: дополнительная вариация использования условного форматирования
- Заключение и выводы об окрашивании ячеек в зависимости от значений
Процесс редактирования цвета в табличном редакторе
Табличка, оформленная так, что определенные значения имеют собственный оттенок, позволяет наглядно и структурированно подать информацию. Особенно важно реализовать такую процедуру в табличных файлах, в которых располагается большое количество информации. Цветовая заливка позволит пользователям быстро ориентироваться в больших объемах данных.
Объекты рабочего листа можно «покрасить» самостоятельно, но такой вариант не подходит в тех случаях, когда информации слишком много. Ко всему прочему, при ручной заливке можно допустить несколько ошибок. Существует два автоматических способа, позволяющих реализовать заливку ячейки цветом. Рассмотрим каждый метод более подробно.
Первый метод: использование условного форматирования
Условное форматирование позволяет указать конкретные границы показателей, при которых поля рабочего листа будут окрашены в определенный цвет. «Покраска» происходит автоматическим образом. Если показатель ячейки выйдет за рамки границы, то автоматически реализуется перекраска этого объекта рабочего листа.
Рассмотрим на определенном примере работу этого метода. К примеру, у нас есть табличка, в которой отображена помесячная прибыль определенной организации. Цель: обозначить различными цветами элементы, в которых размер прибыли ниже 400000 р., от 400000 до 500000 р., а также более 500000 р. Подробная инструкция выглядит так:
- Производим выделение колонки, в которой располагаются данные по прибыли организации. Передвигаемся в подраздел «Главная». Кликаем на кнопку «Условное форматирование», располагающуюся в блоке команд «Стили». В раскрывшемся перечне щелкаем на элемент «Управления правилами…».
- На дисплее возникло окошко, имеющее наименование «Диспетчер правил условного форматирования». В строчку «Показатель правила форматирования для» устанавливаем элемент «Текущий фрагмент». Для подтверждения внесенных настроек кликаем на «Создать правило…».
- На экране появилось окошко, имеющее наименование «Создание правила форматирования». В окошке «Выберите тип правила:» выбираем элемент «Форматировать только ячейки, которые содержат». В 1-ой строчке указываем параметр «Значения». Во 2-ой строчке указываем параметр «Меньше». В 3-ей строчке указываем показатель 400000. Для подтверждения внесенных настроек кликаем на «Формат…».
- На дисплее возникло окошко, имеющее наименование «Формат ячеек». Передвигаемся в подраздел «Заливка». Осуществляем выбор того оттенка, который мы планируем задать ячейкам с показателями меньше 400000. Для подтверждения внесенных настроек кликаем на «ОК».
- Осуществляем возврат в предыдущее окошко и жмем на «ОК».
- Снова оказались в окошке «Диспетчер правил условного форматирования». Сюда добавилось созданное нами правило. Ещё раз кликаем на элемент «Создать правило…».
- На экране снова появилось окошко, имеющее наименование «Создание правила форматирования». В окошке «Выберите тип правила:» выбираем элемент «Форматировать только ячейки, которые содержат». В 1-ой строчке указываем параметр «Значения». Во 2-ой строчке указываем параметр «Между». В 3-ей строчке указываем показатель 400000. В 4-ой строчке указываем значение 500000. Для подтверждения внесенных настроек кликаем на «Формат…».
- На дисплее возникло окошко, имеющее наименование «Формат ячеек». Передвигаемся в подраздел «Заливка». Осуществляем выбор другого оттенка, который мы планируем задать ячейкам с показателями между 400000 и 500000. Для подтверждения внесенных настроек кликаем на «ОК».
- Осуществляем возврат в предыдущее окошко и жмем на «ОК».
- В окошке «Диспетчер правил условного форматирования» мы уже имеем 2 созданных правила. Осталось добавить еще одно. Ещё раз кликаем на элемент «Создать правило…».
- На экране снова появилось окошко, имеющее наименование «Создание правила форматирования». В окошке «Выберите тип правила:» выбираем элемент «Форматировать только ячейки, которые содержат». В 1-ой строчке указываем параметр «Значения». Во 2-ой строчке указываем параметр «больше». В 3-ьей строчке указываем показатель 500000. Для подтверждения внесенных настроек кликаем на «Формат…».
- На дисплее возникло окошко, имеющее наименование «Формат ячеек». Передвигаемся в подраздел «Заливка». Осуществляем выбор другого оттенка, отличающегося от двух предыдущих, который мы планируем задать ячейкам с показателями больше 500000. Для подтверждения внесенных настроек кликаем на «ОК».
- Осуществляем возврат в предыдущее окошко и жмем на «ОК».
- Мы создали три правила. Щёлкаем на «ОК».
- Готово! Мы реализовали окрашивание согласно указанным правилам.
Если отредактировать наполнение какой-либо ячейки, выйдя за рамки 1-го из указанных правил, то ячейка самостоятельно изменит оттенок.
Второй метод: дополнительная вариация использования условного форматирования
При помощи условного форматирования можно реализовать окрашивание и другим способом. Подробная инструкция выглядит так:
- Оказавшись в окошке, имеющем наименование «Создание правила форматирования», выбираем элемент «Форматировать ячейки на основании их значений». В строчке «Цвет» выбираем тот оттенок, которым мы планируем окрасить объекты рабочего листа. Щёлкаем на «ОК».
- В окне «Диспетчер правил» щёлкаем на «ОК».
- В результате проделанных действий ячейки выбранного столбика окрасились разнообразными оттенками выбранного цвета. Большие показатели окрашиваются в более светлые оттенки, а меньшие – в более темные.
Заключение и выводы об окрашивании ячеек в зависимости от значений
Мы выяснили, что существует несколько способов, позволяющих окрасить ячейки в зависимости от значений. Все действия осуществляются при помощи условного форматирования. Каждый пользователь может самостоятельно выбрать наиболее удобный для себя метод.
Оцените качество статьи. Нам важно ваше мнение:
5 / 3 / 2 Регистрация: 17.02.2016 Сообщений: 344 |
|||||||||||||||||||||||||
1 |
|||||||||||||||||||||||||
Окрас фигур по значению в ячейке29.11.2016, 19:28. Показов 4217. Ответов 5
Добрый день, подскажите пожалуйста как окрасить фигуры в экселе по значению в ячейке, т.е. в примере на листе1 есть 4 фигуры созданные в экселе, надо чтоб каждая фигура окрашивалась по значению в ячейке на листе2 (Название столбца «окрас по значению в ячейке») согласно легенде, файл прилогаю
0 |
5 / 3 / 2 Регистрация: 17.02.2016 Сообщений: 344 |
|
29.11.2016, 22:02 [ТС] |
2 |
всем спасибо, написал сам, но было бы интересно посмотреть другой код м.б. он лучше чем мой реализовал через таргет, по цвету соседней ячейки в легенде, проще говоря если 1 то цвет берется из легенды (предварительно залив ячейки нужным цветом)
0 |
Казанский 15136 / 6410 / 1730 Регистрация: 24.09.2011 Сообщений: 9,999 |
||||
29.11.2016, 22:49 |
3 |
|||
Сообщение было отмечено АЛКС как решение РешениеАЛКС,
2 |
АЛКС 5 / 3 / 2 Регистрация: 17.02.2016 Сообщений: 344 |
||||
30.11.2016, 20:28 [ТС] |
4 |
|||
Казанский, отличный у Вас код, подскажите пожалуйста как можно оптимизировать мой код (фигур очень много для закраски) по пытался переделать на Ваш, не получилось, у Вас он отличный но цвета заранее фиксированные в коде, а мне бы чтоб цвета из ячейки можно было брать или если можно лучше Ваш код чуть чуть дополните цветами из ячеек вот мой громоздкий код
Добавлено через 17 минут
0 |
Казанский 15136 / 6410 / 1730 Регистрация: 24.09.2011 Сообщений: 9,999 |
||||||
04.12.2016, 19:53 |
5 |
|||||
Сообщение было отмечено АЛКС как решение РешениеАЛКС, нет файла, соответствующего коду. Приспособил файл из первого поста, вот что получилось.
Вложения
2 |
0 / 0 / 0 Регистрация: 07.03.2019 Сообщений: 4 |
|
23.04.2021, 09:09 |
6 |
Казанский,
0 |