Tooprogram.ru

Компьютерный справочник
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Номера цветов excel

VBA Excel. Цвет ячейки (заливка, фон)

Заливка ячейки цветом в VBA Excel. Фон ячейки. Свойства .Interior.Color и .Interior.ColorIndex. Цветовая модель RGB. Стандартная палитра. Очистка фона ячейки.

Свойство .Interior.Color объекта Range

Начиная с Excel 2007 основным способом заливки диапазона или отдельной ячейки цветом (зарисовки, добавления, изменения фона) является использование свойства .Interior.Color объекта Range путем присваивания ему значения цвета в виде десятичного числа от 0 до 16777215 (всего 16777216 цветов).

Заливка ячейки цветом в VBA Excel

Пример кода 1:

Поместите пример кода в свой программный модуль и нажмите кнопку на панели инструментов «Run Sub» или на клавиатуре «F5», курсор должен быть внутри выполняемой программы. На активном листе Excel ячейки и диапазон, выбранные в коде, окрасятся в соответствующие цвета.

Есть один интересный нюанс: если присвоить свойству .Interior.Color отрицательное значение от -16777215 до -1, то цвет будет соответствовать значению, равному сумме максимального значения палитры (16777215) и присвоенного отрицательного значения. Например, заливка всех трех ячеек после выполнения следующего кода будет одинакова:

Проверено в Excel 2016.

Вывод сообщений о числовых значениях цветов

Числовые значения цветов запомнить невозможно, поэтому часто возникает вопрос о том, как узнать числовое значение фона ячейки. Следующий код VBA Excel выводит сообщения о числовых значениях присвоенных ранее цветов.

Пример кода 2:

Вместо вывода сообщений можно присвоить числовые значения цветов переменным, объявив их как Long.

Использование предопределенных констант

В VBA Excel есть предопределенные константы часто используемых цветов для заливки ячеек:

Предопределенная константаНаименование цвета
vbBlackЧерный
vbBlueГолубой
vbCyanБирюзовый
vbGreenЗеленый
vbMagentaПурпурный
vbRedКрасный
vbWhiteБелый
vbYellowЖелтый
xlNoneНет заливки

Присваивается цвет ячейке предопределенной константой в VBA Excel точно так же, как и числовым значением:

Пример кода 3:

Цветовая модель RGB

Цветовая система RGB представляет собой комбинацию различных по интенсивности основных трех цветов: красного, зеленого и синего. Они могут принимать значения от 0 до 255. Если все значения равны 0 – это черный цвет, если все значения равны 255 – это белый цвет.

Выбрать цвет и узнать его значения RGB можно с помощью палитры Excel:

Чтобы можно было присвоить ячейке или диапазону цвет с помощью значений RGB, их необходимо перевести в десятичное число, обозначающее цвет. Для этого существует функция VBA Excel, которая так и называется – RGB.

Пример кода 4:

Очистка ячейки (диапазона) от заливки

Для очистки ячейки (диапазона) от заливки используется константа xlNone :

Свойство .Interior.ColorIndex объекта Range

До появления Excel 2007 существовала только ограниченная палитра для заливки ячеек фоном, состоявшая из 56 цветов, которая сохранилась и в настоящее время. Каждому цвету в этой палитре присвоен индекс от 1 до 56. Присвоить цвет ячейке по индексу или вывести сообщение о нем можно с помощью свойства .Interior.ColorIndex:

Пример кода 5:

Просмотреть ограниченную палитру для заливки ячеек фоном можно, запустив в VBA Excel простейший макрос:

Пример кода 6:

Номера строк активного листа от 1 до 56 будут соответствовать индексу цвета, а ячейка в первом столбце будет залита соответствующим индексу фоном.

Готовую стандартную палитру из 56 цветов можете посмотреть здесь.

31 комментарий для “VBA Excel. Цвет ячейки (заливка, фон)”

Спасибо, наконец то разобрался во всех перипетиях заливки и цвета шрифта.

Пожалуйста, Виктор. Очень рад, что статья пригодилась.

как проверить наличие фона?

Привет, Надежда!
Фон у ячейки есть всегда, по умолчанию – белый. Отсутствие цветного фона можно определить, проверив, является ли цвет ячейки белым:

Подскажите пожалуйста, как можно посчитать количество залитых определенным цветом ячеек в таблице?

Привет, Иван!
Посчитать ячейки с одинаковым фоном можно с помощью цикла.
Для реализации этого примера сначала выбираем в таблице ячейку с нужным цветом заливки. Затем запускаем код, который определяет цветовой индекс фона активной ячейки, диапазон таблицы вокруг нее и общее количество ячеек с такой заливкой в таблице.

Каким образом можно использовать не в процедуре, а именно в пользовательской функции VBA свойство .Interior.Color?
Скажем, проверять функцией значение какой-то ячейки и подкрашивать ячейку в зависимости от этого.

Фарин, пользовательская функция VBA предназначена только для возврата вычисленного значения в ячейку, в которой она расположена. Она не позволяет внутри себя менять формат своей ячейки, а также значения и форматы других ячеек.

Однако, с помощью пользовательской функции VBA можно вывести значения свойств ячейки, в которой она размещена:

В сети есть эксперименты по изменению значений других ячеек из пользовательской функции VBA, но они могут работать нестабильно и приводить к ошибкам.

Для подкрашивания ячейки в зависимости от ее значения используйте процедуру Sub или штатный инструмент Excel – условное форматирование.

а как можно закрасить только пустые ячейки ?

Лев, закрасить пустые ячейки можно с помощью цикла For Each… Next:

Евгений, спасибо за ссылку на интересный прием.

Евгений, день добрый.
Подскажите пожалуйста, как назначить ячейке цвет через значение RGB, которое в ней записано. Или цвет другой ячейки.

Привет, Александр!
Используйте функцию InStr, чтобы найти положение разделителей, а дальше функции Left и Mid. Смотрите пример с пробелом в качестве разделителя:

Или еще проще с помощью функции Split:

Добрый день!
подскажите, пожалуйста, как можно выводить из таблицы (150 столбцов х 150 строк) адрес ячеек (списком), если они имеют заливку определенного цвета.
Заранее спасибо!

Читать еще:  Функция mid в excel на русском

Привет, Валентина!
Используйте два цикла For…Next. Определить числовой код цвета можно с помощью выделения одной из ячеек с нужным цветом.

добрый день! подскажите, пожалуйста, как сделать, чтобы результаты выводились на отдельный лист ?
заранее спасибо!

Валентина, замените в коде имя “Лист2” на имя своего листа.

Евгений. Долгое время мучаюсь реализацией следующего сценария: в таблице Excel, которая является базой данных пациентов отделения есть столбец “G” в котором лаборанты отмечают исследования выполненные с контрастом “(С+)” и без “(C-)” и далее в столбце “N” они отмечаются количество использованного контраста “от 50мл до 200мл”; для удобства ввода и уменьшения числа непреднамеренных ошибок в столбцах реализована функция проверки данных что бы сотрудники могли выбирать уже готовые значения из списка и если ошибутся то выскочит ошибка; тем не менее сотрудники умудряются при заполнении таблицы не вносить количество использованного контраста. Вопрос заключается в том, как подкрасить ячейку для ввода количества контраста красным цветом при условии, что в ячейке столбца G фигурирует (С+) с целью акцентировать на этом внимание.
Заранее спасибо за ответ.

Добрый день, Алексей!
Примените условное форматирование:

1 Выберите столбец “N”.
2 На вкладке ленты «Главная» перейдите по ссылкам «Условное форматирование» «Создать правило».
3 В открывшемся окне выберите тип правила: «Использовать формулу для определения форматируемых ячеек».
4 В строку формул вставьте =И(ЕСЛИ(G1=»(C+)»;1);ЕСЛИ(N1=»»;1)) . Буква “C” должна быть из одной раскладки (ENG или РУС) в формуле и в ячейке.
5 Нажмите кнопку «Формат» и на вкладке «Заливка» выберите красный цвет.
6 Закройте все окна, нажимая «OK».

Если в ячейке столбца “G” будет выбрано “(С+)”, то ячейка той же строки в столбце “N” подкрасится красным цветом. После ввода значения в ячейку столбца “N”, ее цвет изменится на первоначальный.

Спасибо Евгений! Ваш пример многое прояснил (в т.ч надо читать Уокенбаха и не филонить). Мне удалось заставить работать этот сценарий не так изящно как у Вас т.е создал для каждой отдельной переменной свое правило: пр. для ГМ. (С+) –> =ЕСЛИ(И(G5066=”ГМ. (С+)”;N5066=””);”Истина”;”Ложь”)
МТ. (С+) –> =ЕСЛИ(И(G5066=”МТ. (С+)”;N5066=””);”Истина”;”Ложь”) и т.д всего 8 правил для каждого конкретного случая.
И применил их всех для столбца N:N

Ячейку G взял произвольно и в дальнейшем вообще убрал ее на лист метаданных (диапазоны переменных типа ГМ. (С+), МТ. (С+)…)
Еще раз благодарю за помощь! а есть возможность тоже самое сделать цикличным скриптом VBA ? (или я сморозил…).
Заранее спасибо за ответ.

Как получить цвета по цветовой шкале условного форматирования Excel 2012 через код VBA

Мне нужно знать: Как получить цвета, сделанные цветовой гаммой условного форматирования Excel 2010 через код VBA. Эти цвета будут впоследствии назначены VBA в качестве фона диаграммы в соответствии со следующим изображением:

Я провел исследование на различных веб-сторонах и:

  1. большинство людей советуют, как читать цвет условного форматирования по методике .FormatConditions(index that is active).Interior.ColorIndex но в моем случае это не работает из-за ошибки «объект не поддерживает это свойство или метод»
  2. некоторые люди советуют написать собственное вычисление цветов (на основе значения ячеек). Я нашел различные способы, как это сделать, но ни один из них не может вычислить те же цвета, которые были вычислены ранее excel (те же цвета, что и на предыдущем рисунке).

поэтому я спрашиваю:

  1. есть ли способ непосредственно готовые цвета из ячеек? (или эти цвета недоступны для API)
  2. вы знаете, как вычислить те же цвета, что и Excel compute?
  3. вы знаете другой способ, как решить мою проблему?

Я считаю, что он должен как-то работать.

6 ответов

если нет лучшего ответа, вы можете попробовать это временное решение:

  1. ссылка / копирование данных в ячейки под диаграммой (с формулами, такими как =Sheet1!A1 )
  2. применить то же условное форматирование
  3. скрыть значения (с пользовательским форматом номера, как «» , т. е. пустой строковый литерал (2 двойные кавычки))
  4. сделать график прозрачным
  5. выровнять ячейки с график

обновление:

или вы можете попытаться вычислить цвет линейным приближением для каждого канала R, G, B, если условный формат использует только 2 базовых цвета (r1, g1, b1) и (r2, g2, b2) для 2 угловых случаев, которые могут быть

  • min и max стоимостью, например: 0 — 4 000
  • min и max процентов, например: 10% — 90%
    (я считаю, что вы можете использовать % * [массив — min_value], чтобы получить фактическое значение)
  • min и max процентиль, например: 0-й процентиль-100-й процентиль

для параметров процентов / процентилей сначала необходимо преобразовать фактическое значение в значение процентов / процентилей, а затем, если value или value > max используйте угловые цвета, в противном случае:

это скопирует изображение ячейки в верхний левый угол chartobject на том же листе. Обратите внимание на картины связана с скопирована ячейка — если значение или цвет изменения форматирования она будет меняться, чтобы соответствовать.

EDIT: я только что протестировал это с довольно маленькой матрицей 4×8 ячеек/диаграмм, и производительность довольно плохая! Может быть, лучше просто вставить без ссылки:=True .

Это не относится к вашей проблеме, но легко модифицируется для решения вашей проблемы.

Рекомендации и примеры сортировки и фильтрации данных по цвету

Сортировка и фильтрация данных по цвету значительно упрощает анализ данных и помогает пользователям быстро увидеть на листе выделенные данные и динамику их изменений.

Читать еще:  Поискпоз на английском excel

В этой статье

Общие сведения о сортировке и фильтрации данных по цвету и набору значков

Сортировка и фильтрация данных, а также условное форматирование данных, являются неотъемлемыми частями анализа данных и могут помочь в получении ответов на вопросы, подобные перечисленным ниже.

Чьи продажи услуг в этом месяце составили более 50 000 рублей?

Для каких продуктов прирост выручки по сравнению с прошлым годом превысил 10 %?

Кто из студентов является лучшим и худшим на младшем курсе?

Каковы исключения в отчетах по прибыли за последние пять лет?

Каково общее распределение сотрудников по возрасту?

Сортировка данных необходима для быстрого упорядочения и поиска нужных сведений. Фильтрация по одному или нескольким столбцам используется для того, чтобы отобразить только те строки, которые удовлетворяют указанным критериям, и скрыть строки, которые не нужно отображать. Условное форматирование обеспечивает наглядность при изучении и анализе данных, обнаружении критических проблем, определении моделей и тенденций. Совместное использование сортировки, фильтрации и условного форматирования данных может помочь вам и другим пользователям, использующим лист, принимать более эффективные решения, основанные на данных.

Сортировку и фильтрацию можно выполнять по формату, включая цвет ячейки и цвет шрифта, независимо от форматирования ячеек (ручного или условного).

На этом рисунке демонстрируется фильтрация и сортировка по цвету и значкам в столбцах «Категория», M/M Δ% и «Наценка».

Фильтрацию можно также выполнять по набору значков, созданному с помощью условного форматирования. Набор значков используется для аннотирования и классификации данных по трем-пяти категориям, разделенным пороговым значением. Каждый значок соответствует диапазону значений. Например, в таблице наборов значков, представленной ниже, в наборе значков «Три стрелки» зеленая стрелка, указывающая вверх, соответствует высоким значениям, желтая стрелка, направленная в сторону, соответствует средним значениям, а красная стрелка вниз — низким значениям.

Таблица наборов значков

Ячейки можно форматировать с помощью двухцветной шкалы, трехцветной шкалы, гистограмм и наборов значков. При этом ячейки могут содержать определенный текст, числа, значения даты или времени, первые или последние ранжированные значения, значения выше или ниже среднего, уникальные или повторяющиеся значения. Кроме того, можно создавать различные правила и эффективно управлять ими.

Эффективное использование цвета при анализе данных

Цветное оформление нравится почти всем пользователям. Эффективное использование цвета может значительно увеличить привлекательность и удобочитаемость любого документа. При правильном использовании в отчетах Excel цветов и значков процесс принятия решений оптимизируется за счет привлечения внимания пользователей к критически важной информации и упрощения визуального восприятия результатов. Благодаря правильному использованию цветов можно с самого начала обеспечить положительный эмоциональный эффект. С другой стороны, неудачное применение цветов может отвлекать пользователей и даже стать причиной усталости при чрезмерном использовании. В разделах ниже приведены рекомендации по эффективному использованию цветов, которые помогут избежать их неудачного применения.

Дополнительные сведения о темах документов В Excel легко создавать согласованные темы и добавлять собственные стили и эффекты. Большая часть того, что требуется для эффективного сочетания цветов, уже сделана за счет использования предопределенных тем документов, в которых применяются привлекательные цветовые схемы. Применение темы позволяет легко и быстро отформатировать весь документ, придав ему профессиональный и современный вид. Тема документа представляет собой набор вариантов форматирования, включая набор цветов, шрифтов (в том числе для заголовков и основного текста) и эффектов темы (включая линии и способы заливки).

Использование стандартных цветов и ограничение числа цветов

При фильтрации и сортировке по цвету можно выбрать предпочитаемые цвета, и результат покажется приемлемым для автора. Однако сначала нужно задать себе главный вопрос: «Подойдут ли эти цвета для остальных пользователей?» Современный компьютер способен отображать 16 777 216 цветов в 24-битном режиме. Однако большинство пользователей способны различить лишь незначительную их часть. Кроме того, качество цветопередачи может отличаться от компьютера к компьютеру. Освещение в комнате, качество бумаги, разрешение экрана и принтера и параметры браузера — все эти параметры могут различаться. До 10 % людей испытывают некоторые трудности с различением и восприятием определенных цветов. Это важные переменные факторы, которые вряд ли возможно контролировать.

Однако можно контролировать такие переменные факторы, как выбор цвета, количество цветов, а также фон листа или ячейки. Разумный выбор, основанный на фундаментальных исследованиях, может помочь передать в цвете правильную информацию и верно интерпретировать данные. В дополнение к цветам можно добавить значки и условные обозначения, чтобы помочь пользователям понять значение цветов.

Контраст цвета и фон

Обычно следует использовать цвета с высокой насыщенностью, например ярко-желтый, темно-зеленый или темно-красный. Контраст между фоном и передним планом должен быть достаточно заметным. Например, используйте белый или серый цвет для фона листа с другими цветами ячеек либо белый или серый цвет ячеек с другим цветом шрифта. Если необходимо использовать для фона цвет или рисунок, сделайте цвет или изображение как можно более светлым, чтобы цвет ячейки или шрифта не сливался с фоном. Если за основу берется только цвет шрифта, можно увеличить размер шрифта или сделать шрифт полужирным. Чем крупнее шрифт, тем пользователю проще увидеть или различить цвет. В случае необходимости настройте или удалите чередование строк или столбцов, поскольку чередующийся цвет может смешаться с цветом ячейки или шрифта. Все эти рекомендации имеют большое значение для правильного понимания и интерпретации цвета всеми пользователями.

Читать еще:  Как сделать копию листа в excel

Старайтесь избегать сочетаний цветов, которые могут уменьшить видимость цвета или запутать зрителя. Нет необходимости создавать умопомрачительное творение искусства или оптическую иллюзию. Если нельзя избежать использования плохо сочетаемых цветов рядом друг с другом, используйте границы ячеек, чтобы отделить проблематичные цвета, например красный и зеленый. Используйте дополняющие и контрастные цвета для повышения контрастности и старайтесь не использовать похожие цвета. Следует иметь представление о круге основных цветов и уметь определять похожие, контрастные и дополняющие цвета.

1. Похожие цвета находятся на цветовом круге рядом друг с другом (например, фиолетовый и оранжевый цвета похожи на красный).

2. Контрастный цвет смещен на три цвета от текущего цвета (например, синий и зеленый цвета являются контрастными по отношению к красному).

3. Дополняющие цвета находятся на цветовом круге друг напротив друга (например, сине-зеленый цвет является дополнительным для красного).

Если имеется достаточно времени, проверьте свои цвета, обсудите их с несколькими коллегами, оцените их при различных условиях освещения и поэкспериментируйте с различными параметрами экрана компьютера и принтера.

Совет: При печати документов в цвете перепроверьте цвета ячеек и шрифта на предмет удобочитаемости. Если цвет ячеек слишком темный, попробуйте использовать белый шрифт для улучшения восприятия.

Выбор наиболее подходящих цветов

Нужны краткие рекомендации? Используйте красный, желтый, зеленый или синий цвет на белом или сером фоне.

Выбирайте значения цветов в зависимости от аудитории и предполагаемых целей. Если необходимо, предоставьте легенду, в которой объясняется значение каждого цвета. Большинство людей могут легко различить от семи до десяти цветов на одном листе. Человек может различить и до 50 цветов, но для этого требуется специальная подготовка, и этот вопрос выходит за рамки данной статьи.

Лучшие 10 цветов

При сортировке и фильтрации данных по цвету используйте таблицу ниже, которая должна помочь в выборе цвета. Эти цвета обеспечивают наиболее резкий контраст и, в общем случае, являются самыми простыми для различения большинством людей.

Эти цвета можно легко применить к ячейкам и шрифтам с помощью кнопок Цвет заливки и Цвет текста в группе Шрифт на вкладке Главная.

Использование цветов, которые естественно передают смысл

При чтении финансовых данных цифры отображаются красным (отрицательные) или черным (положительные) цветом. Красный цвет передает смысл, поскольку это является общепринятым соглашением. Если нужно выделить отрицательные числа, красный цвет является наиболее подходящим. В зависимости от типа имеющихся данных можно использовать определенные цвета, поскольку они передают смысл для аудитории или, возможно, существует общепринятый стандарт для их значения. Рассмотрим пример.

В случае температурных данных можно использовать теплые цвета (красный, желтый и оранжевый) для обозначения высоких температур и холодные (зеленый, синий, фиолетовый) — для низких.

В случае топографических данных можно использовать голубой цвет для воды, зеленый для растительности, коричневый для пустыни и гор, а белый — для льда и снега.

В случае данных о дорожном движении и безопасности можно использовать красный цвет для сведений о запретах, оранжевый для опасного оборудования, желтый для предупреждений, зеленый для безопасных условий, а голубой — для общих сведений.

В случае данных об электрических резисторах можно использовать стандартные кодовые цвета: черный, коричневый, красный, оранжевый, желтый, зеленый, синий, фиолетовый, серый и белый.

Несколько примеров

Предположим, вам нужно подготовить набор отчетов по описаниям, ценам и уровням складских запасов продуктов. В следующих разделах рассматриваются типичные вопросы, которые могут возникнуть в связи с этими данными, и способы ответа на них с использованием цветов и наборов значков.

Образец данных

В примерах используется приведенный ниже образец данных.

Чтобы скопировать данные в пустую книгу, выполните указанные ниже действия.

Сохранение образца данных в XLSX-файле

Запустите программу Блокнот.

Выделите текст образца, а затем скопируйте его и вставьте в Блокнот.

Сохраните файл, указав его имя и расширение, например Products.csv.

Выйдите из Блокнота.

Откройте файл, сохраненный в Блокноте.

Сохраните файл в формате XLSX.

Какие виды упаковки используются?

Предположим, вам нужно подобрать различные типы тары для продуктов, но столбец «Тара» отсутствует. Вы можете вручную раскрасить все ячейки в столбце «Количество на единицу», а затем выполнить сортировку по цвету. Можно также добавить условные обозначения, поясняющие пользователю смысл каждого цвета.

Чтобы вручную задать цвета ячеек согласно цветовой схеме из таблицы выше, щелкните каждую ячейку и примените нужный цвет с помощью кнопки Цвет заливки в группе Шрифт на вкладке Главная.

Совет: Кнопка Формат по образцу в группе Буфер обмена на вкладке Главная позволяет быстро применить выбранный цвет к другой ячейке.

Щелкните ячейку в столбце Количество на единицу, на вкладке Главная в группе Правка нажмите Сортировка и фильтр и выберите элемент Настраиваемая сортировка.

В диалоговом окне Сортировка в разделе Столбец выберите элемент Количество на единицу, в разделе Сортировка выберите Цвет ячейки, а затем дважды щелкните Копировать уровень.

В разделе Порядок в первой строке выберите красный цвет, во второй — синий, а в третьей — желтый.

Если ячейка не содержит цвета (например, имеет белый фон), соответствующая строка остается на месте.

Примечание: Перечисленные цвета есть в ячейках столбца. Порядок сортировки цветов по умолчанию отсутствуют, и задать порядок настраиваемой сортировки с помощью настраиваемого списка невозможно.

Добавьте условные обозначения в ячейках сбоку отчета, руководствуясь приведенной ниже таблицей.

Ссылка на основную публикацию
Adblock
detector