Как подтянуть цвет фона ячейки в другую ячейку? |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
Содержание
- Процедура изменения цвета ячеек в зависимости от содержимого
- Способ 1: условное форматирование
- Способ 2: использование инструмента «Найти и выделить»
- Вопросы и ответы
При работе с таблицами первоочередное значение имеют выводимые в ней значения. Но немаловажной составляющей является также и её оформление. Некоторые пользователи считают это второстепенным фактором и не обращают на него особого внимания. А зря, ведь красиво оформленная таблица является важным условием для лучшего её восприятия и понимания пользователями. Особенно большую роль в этом играет визуализация данных. Например, с помощью инструментов визуализации можно окрасить ячейки таблицы в зависимости от их содержимого. Давайте узнаем, как это можно сделать в программе Excel.
Процедура изменения цвета ячеек в зависимости от содержимого
Конечно, всегда приятно иметь хорошо оформленную таблицу, в которой ячейки в зависимости от содержимого, окрашиваются в разные цвета. Но особенно актуальна данная возможность для больших таблиц, содержащих значительный массив данных. В этом случае заливка цветом ячеек значительно облегчит пользователям ориентирование в этом огромном количестве информации, так как она, можно сказать, будет уже структурированной.
Элементы листа можно попытаться раскрасить вручную, но опять же, если таблица большая, то это займет значительное количество времени. К тому же, в таком массиве данных человеческий фактор может сыграть свою роль и будут допущены ошибки. Не говоря уже о том, что таблица может быть динамической и данные в ней периодически изменяются, причем массово. В этом случае вручную менять цвет вообще становится нереально.
Но выход существует. Для ячеек, которые содержат динамические (изменяющиеся) значения применяется условное форматирование, а для статистических данных можно использовать инструмент «Найти и заменить».
Способ 1: условное форматирование
С помощью условного форматирования можно задать определенные границы значений, при которых ячейки будут окрашиваться в тот или иной цвет. Окрашивание будет проводиться автоматически. В случае, если значение ячейки, вследствие изменения выйдет за пределы границы, то автоматически произойдет перекрашивание данного элемента листа.
Посмотрим, как этот способ работает на конкретном примере. Имеем таблицу доходов предприятия, в которой данные разбиты помесячно. Нам нужно выделить разными цветами те элементы, в которых величина доходов менее 400000 рублей, от 400000 до 500000 рублей и превышает 500000 рублей.
- Выделяем столбец, в котором находится информация по доходам предприятия. Затем перемещаемся во вкладку «Главная». Щелкаем по кнопке «Условное форматирование», которая располагается на ленте в блоке инструментов «Стили». В открывшемся списке выбираем пункт «Управления правилами…».
- Запускается окошко управления правилами условного форматирования. В поле «Показать правила форматирования для» должно быть установлено значение «Текущий фрагмент». По умолчанию именно оно и должно быть там указано, но на всякий случай проверьте и в случае несоответствия измените настройки согласно вышеуказанным рекомендациям. После этого следует нажать на кнопку «Создать правило…».
- Открывается окно создания правила форматирования. В списке типов правил выбираем позицию «Форматировать только ячейки, которые содержат». В блоке описания правила в первом поле переключатель должен стоять в позиции «Значения». Во втором поле устанавливаем переключатель в позицию «Меньше». В третьем поле указываем значение, элементы листа, содержащие величину меньше которого, будут окрашены определенным цветом. В нашем случае это значение будет 400000. После этого жмем на кнопку «Формат…».
- Открывается окно формата ячеек. Перемещаемся во вкладку «Заливка». Выбираем тот цвет заливки, которым желаем, чтобы выделялись ячейки, содержащие величину менее 400000. После этого жмем на кнопку «OK» в нижней части окна.
- Возвращаемся в окно создания правила форматирования и там тоже жмем на кнопку «OK».
- После этого действия мы снова будем перенаправлены в Диспетчер правил условного форматирования. Как видим, одно правило уже добавлено, но нам предстоит добавить ещё два. Поэтому снова жмем на кнопку «Создать правило…».
- И опять мы попадаем в окно создания правила. Перемещаемся в раздел «Форматировать только ячейки, которые содержат». В первом поле данного раздела оставляем параметр «Значение ячейки», а во втором выставляем переключатель в позицию «Между». В третьем поле нужно указать начальное значение диапазона, в котором будут форматироваться элементы листа. В нашем случае это число 400000. В четвертом указываем конечное значение данного диапазона. Оно составит 500000. После этого щелкаем по кнопке «Формат…».
- В окне форматирования снова перемещаемся во вкладку «Заливка», но на этот раз уже выбираем другой цвет, после чего жмем на кнопку «OK».
- После возврата в окно создания правила тоже жмем на кнопку «OK».
- Как видим, в Диспетчере правил у нас создано уже два правила. Таким образом, осталось создать третье. Щелкаем по кнопке «Создать правило».
- В окне создания правила опять перемещаемся в раздел «Форматировать только ячейки, которые содержат». В первом поле оставляем вариант «Значение ячейки». Во втором поле устанавливаем переключатель в полицию «Больше». В третьем поле вбиваем число 500000. Затем, как и в предыдущих случаях, жмем на кнопку «Формат…».
- В окне «Формат ячеек» опять перемещаемся во вкладку «Заливка». На этот раз выбираем цвет, который отличается от двух предыдущих случаев. Выполняем щелчок по кнопке «OK».
- В окне создания правил повторяем нажатие на кнопку «OK».
- Открывается Диспетчер правил. Как видим, все три правила созданы, поэтому жмем на кнопку «OK».
- Теперь элементы таблицы окрашены согласно заданным условиям и границам в настройках условного форматирования.
- Если мы изменим содержимое в одной из ячеек, выходя при этом за границы одного из заданных правил, то при этом данный элемент листа автоматически сменит цвет.
Кроме того, можно использовать условное форматирование несколько по-другому для окраски элементов листа цветом.
- Для этого после того, как из Диспетчера правил мы переходим в окно создания форматирования, то остаемся в разделе «Форматировать все ячейки на основании их значений». В поле «Цвет» можно выбрать тот цвет, оттенками которого будут заливаться элементы листа. Затем следует нажать на кнопку «OK».
- В Диспетчере правил тоже жмем на кнопку «OK».
- Как видим, после этого ячейки в колонке окрашиваются различными оттенками одного цвета. Чем значение, которое содержит элемент листа больше, тем оттенок светлее, чем меньше – тем темнее.
Урок: Условное форматирование в Экселе
Способ 2: использование инструмента «Найти и выделить»
Если в таблице находятся статические данные, которые не планируется со временем изменять, то можно воспользоваться инструментом для изменения цвета ячеек по их содержимому под названием «Найти и выделить». Указанный инструмент позволит отыскать заданные значения и изменить цвет в этих ячейках на нужный пользователю. Но следует учесть, что при изменении содержимого в элементах листа, цвет автоматически изменяться не будет, а останется прежним. Для того, чтобы сменить цвет на актуальный, придется повторять процедуру заново. Поэтому данный способ не является оптимальным для таблиц с динамическим содержимым.
Посмотрим, как это работает на конкретном примере, для которого возьмем все ту же таблицу дохода предприятия.
- Выделяем столбец с данными, которые следует отформатировать цветом. Затем переходим во вкладку «Главная» и жмем на кнопку «Найти и выделить», которая размещена на ленте в блоке инструментов «Редактирование». В открывшемся списке кликаем по пункту «Найти».
- Запускается окно «Найти и заменить» во вкладке «Найти». Прежде всего, найдем значения до 400000 рублей. Так как у нас нет ни одной ячейки, где содержалось бы значение менее 300000 рублей, то, по сути, нам нужно выделить все элементы, в которых содержатся числа в диапазоне от 300000 до 400000. К сожалению, прямо указать данный диапазон, как в случае применения условного форматирования, в данном способе нельзя.
Но существует возможность поступить несколько по-другому, что нам даст тот же результат. Можно в строке поиска задать следующий шаблон «3?????». Знак вопроса означает любой символ. Таким образом, программа будет искать все шестизначные числа, которые начинаются с цифры «3». То есть, в выдачу поиска попадут значения в диапазоне 300000 – 400000, что нам и требуется. Если бы в таблице были числа меньше 300000 или меньше 200000, то для каждого диапазона в сотню тысяч поиск пришлось бы производить отдельно.
Вводим выражение «3?????» в поле «Найти» и жмем на кнопку «Найти все».
- После этого в нижней части окошка открываются результаты поисковой выдачи. Кликаем левой кнопкой мыши по любому из них. Затем набираем комбинацию клавиш Ctrl+A. После этого выделяются все результаты поисковой выдачи и одновременно выделяются элементы в столбце, на которые данные результаты ссылаются.
- После того, как элементы в столбце выделены, не спешим закрывать окно «Найти и заменить». Находясь во вкладке «Главная» в которую мы переместились ранее, переходим на ленту к блоку инструментов «Шрифт». Кликаем по треугольнику справа от кнопки «Цвет заливки». Открывается выбор различных цветов заливки. Выбираем тот цвет, который мы желаем применить к элементам листа, содержащим величины менее 400000 рублей.
- Как видим, все ячейки столбца, в которых находятся значения менее 400000 рублей, выделены выбранным цветом.
- Теперь нам нужно окрасить элементы, в которых располагаются величины в диапазоне от 400000 до 500000 рублей. В этот диапазон входят числа, которые соответствуют шаблону «4??????». Вбиваем его в поле поиска и щелкаем по кнопке «Найти все», предварительно выделив нужный нам столбец.
- Аналогично с предыдущим разом в поисковой выдаче производим выделение всего полученного результата нажатием комбинации горячих клавиш CTRL+A. После этого перемещаемся к значку выбора цвета заливки. Кликаем по нему и жмем на пиктограмму нужного нам оттенка, который будет окрашивать элементы листа, где находятся величины в диапазоне от 400000 до 500000.
- Как видим, после этого действия все элементы таблицы с данными в интервале с 400000 по 500000 выделены выбранным цветом.
- Теперь нам осталось выделить последний интервал величин – более 500000. Тут нам тоже повезло, так как все числа более 500000 находятся в интервале от 500000 до 600000. Поэтому в поле поиска вводим выражение «5?????» и жмем на кнопку «Найти все». Если бы были величины, превышающие 600000, то нам бы пришлось дополнительно производить поиск для выражения «6?????» и т.д.
- Опять выделяем результаты поиска при помощи комбинации Ctrl+A. Далее, воспользовавшись кнопкой на ленте, выбираем новый цвет для заливки интервала, превышающего 500000 по той же аналогии, как мы это делали ранее.
- Как видим, после этого действия все элементы столбца будут закрашены, согласно тому числовому значению, которое в них размещено. Теперь можно закрывать окно поиска, нажав стандартную кнопку закрытия в верхнем правом углу окна, так как нашу задачу можно считать решенной.
- Но если мы заменим число на другое, выходящее за границы, которые установлены для конкретного цвета, то цвет не поменяется, как это было в предыдущем способе. Это свидетельствует о том, что данный вариант будет надежно работать только в тех таблицах, в которых данные не изменяются.
Урок: Как сделать поиск в Экселе
Как видим, существует два способа окрасить ячейки в зависимости от числовых значений, которые в них находятся: с помощью условного форматирования и с использованием инструмента «Найти и заменить». Первый способ более прогрессивный, так как позволяет более четко задать условия, по которым будут выделяться элементы листа. К тому же, при условном форматировании цвет элемента автоматически меняется, в случае изменения содержимого в ней, чего второй способ делать не может. Впрочем, заливку ячеек в зависимости от значения путем применения инструмента «Найти и заменить» тоже вполне можно использовать, но только в статических таблицах.
Skip to content
В этой статье вы найдете 13 примеров как изменить цвет фона ячеек в зависимости от значения в Excel 2016, 2013 и 2010. Кроме того, вы узнаете, как использовать формулы Excel для изменения цвета пустых ячеек или ячеек с ошибками в формулах.
Всем известно, что изменить цвет фона отдельной ячейки или диапазона данных в Microsoft Excel легко, просто нажав кнопку « Цвет заливки » . Но что, если вы хотите изменить цвет фона всех ячеек с определенным значением? Более того, что если нужно, чтобы он изменялся автоматически вместе с изменениями значения ячейки? Далее в этой статье вы найдете ответы на эти вопросы и получите несколько полезных советов, которые помогут вам выбрать правильный метод для каждой конкретной задачи.
- Цветовые шкалы и гистограммы.
- Как можно использовать значки?
- Как выделить с ячейки с текстом?
- Изменяем цвет ячеек с числами.
- Изменение цвета ячейки по начальным буквам.
- Выделяем ячейки, содержащие более 1 слова.
- Выделение лишних пробелов.
- Подсветка дат и сроков.
- Как скрыть содержимое ячейки по условию?
- Подсветка ячеек с формулами.
- Выделение пустых ячеек либо с ошибками.
- Подсветка недопустимых значений.
- Меняем вид ячейки в зависимости от прочих ячеек.
Ранее мы уже рассмотрели, как создать правило условного форматирования. Рекомендую ознакомиться с этим материалом. Ссылку на него вы можете найти в конце этой статьи.
А сейчас на простых примерах мы рассмотрим, как в Excel можно автоматически выделить цветом интересующие нас данные.
Цветовые шкалы и гистограммы.
Ваши показатели в таблице могут быть гораздо более наглядными, если сопроводить их диаграммой. Просто выберите необходимый стиль, как это показано на рисунке ниже.
Думаю, с настройками вы сами разберетесь, несмотря на их большое количество. Но согласитесь, что получается весьма информативно и красиво. Гораздо легче получается ориентироваться в большом количестве цифр.
Еще одна полезная возможность – использование цветовой шкалы. Здесь вы можете установить, как будет меняться оттенок фона по направлению от меньшего к большему.
Чем более насыщенный и темный фон, тем больше число в таблице. Как видите, здесь легко определить, какие товары и когда продаются лучше всего.
Как можно использовать значки?
А вот еще один интересный вариант, при помощи которого можно наглядно показать динамику изменений показателей. К примеру, у нас есть отчет о состоянии исполнения каких-то проектов или заданий. Как обычно, выполнение показано в процентах. Можно попробовать этим процентам придать больше наглядности.
Итак, вновь переходим в меню. Думаю, мы это уже умеем делать 😊. Далее выбираем первый пункт (1) – форматировать на основании значений. Далее в меню «Стиль формата» (2) ищем пункт «Наборы значков». Выберите тот набор, который вам больше нравится. (3) Далее устанавливаем правила для каждого значка. Думаю, здесь для вас ничего сложного не будет. Я установил границы в 25,50 и 75 процентов (4). Здесь же вы можете выбрать индивидуальное оформление каждого значка.
Результат вы видите на картинке вверху. При желании можете активировать соответствующий чекбокс, чтобы показывать только значок без числа.
Как выделить с ячейки с текстом?
Если нам нужно изменить цвет ячейки в зависимости от того, содержится в ней текст или число? Действуем по прежней схеме.
Выделяем A1:B10, затем щелкнем на вкладке Главная —
– Создать правило – Использовать формулу.
Она будет выглядеть так:
=ЕТЕКСТ(A1)
Функция ЕТЕКСТ проверяет на наличие именно текста. Если условие выполнено, клетка будет закрашена.
Просто, не правда ли?
Изменяем цвет ячеек с числами.
Как закрасить ячейку с числом по условию? Мы должны изменить цвет ячейки в зависимости от значения в определенной клетке таблицы Эксель.
Естественно, действуем по стандартной схеме: выделяем область форматирования, затем используем выражение:
=СЧЁТЕСЛИ(A3;$A$1)=1
Содержимое A1 подставляется в качестве условия в формулу СЧЕТЕСЛИ. Результатом может быть только ноль или единица. А единица соответствует логическому ИСТИНА. Вот тогда-то и применяется установленный нами формат (в нашем случае – белый шрифт на синем фоне). И так перебираем все содержимое нашего диапазона.
Подобное выделение можно производить по столбцу, чтобы привлечь внимание к определенным цифрам (например, процент выполнения плана продаж). И, что важно, условие можно менять динамически – для этого не нужно корректировать никакие формулы, достаточно просто изменить текст условия в нужной клетке таблицы.
Изменение цвета ячейки по начальным буквам.
При помощи этой функции даже можно организовать своего рода поиск по словам в таблице. Чаще всего фамилию мы ищем по начальным буквам. Сделаем так, чтобы позиции с текстом, начинающимся с определенных букв, подсвечивались.
Определим, где мы будем выделять найденное – в A3:F19. Далее в правиле условного форматирования используем выражение:
=ЛЕВСИМВ(A3;ДЛСТР($A$1))= $A$1
Поясним, как это работает. В A1 находится условие поиска – первые несколько букв слова. При помощи ДЛСТР($A$1) определяем длину этой строки, то есть сколько букв в ней. Затем при помощи функции ЛЕВСИМВ в каждой из ячеек нашего диапазона берем рассчитанное ранее количество букв начиная с первой слева, и сравниваем с A1. То есть, «отрезаем» слева кусочек такой же длины, как А1, и сравниваем с ним. Если есть совпадение, тогда выделяем их.
Как видите, совершенно не сложно, но может быть достаточно полезным.
Выделяем ячейки, содержащие более 1 слова.
Немного усложним предыдущее задание. Первоначальный порядок действий – то же, что и ранее. Вся хитрость заключается в применении специальной формулы, при помощи которой мы выделим текст, состоящий более чем из 2 слов.
Правило условного форматирования здесь будет такое:
=ДЛСТР(СЖПРОБЕЛЫ(A1))-ДЛСТР(ПОДСТАВИТЬ(A1;» «;»»))>0
Разберем, как это работает. Логика здесь не сложная:
- Между словами всегда есть пробелы.
- Но, поскольку пробелы в начале и в конце текста нам не нужны, избавляемся от них при помощи функции СЖПРОБЕЛЫ(А1).
- Подсчитаем количество символов в получившемся в п.2 тексте при помощи ДЛСТР. Запишем ДЛСТР(СЖПРОБЕЛЫ(A1)).
- Удалим все пробелы из текста при помощи функции ПОДСТАВИТЬ, которая заменит пробел на пустой символ “”, то есть фактически удалит его: ПОДСТАВИТЬ(A1;» «;»»)
- Считаем количество символов в тексте, получившемся в п.4, используя функцию ДЛСТР: ДЛСТР(ПОДСТАВИТЬ(A1;» «;»»)).
- Сравниваем результаты, получившиеся в п.3 и п.5 путем их вычитания. Если результатом будет ноль, значит текст состоял из одного слова. Если получится число больше нуля, значит, были пробелы между словами. И, следовательно, текст состоял более чем из одного слова.
Что нам и было необходимо. Их и закрасим.
Выделение лишних пробелов.
Еще один небольшой лайфхак для проверки правильности ввода данных. Довольно распространенная проблема – лишние пробелы в начале или в конце текста. Это затрудняет поиск нужной информации, ее группировку и сравнение данных. Лишний пробел незаметен, но на самом деле это уже иной текст. В результате может появиться насколько одинаковых с виду, но на самом деле разных наименований товаров и т.п.
Итак, давайте постараемся указать на подобные неточности обычным для нас способом – изменением внешнего вида.
Поскольку проверять мы будем в D4,D6, D8 и D10, выделим их и правило форматирования запишем в виде формулы
=СЖПРОБЕЛЫ(D4)<>D4
Функция СЖПРОБЕЛЫ убирает из текста начальные и конечные пробелы. И если после такого «сжатия» оказалось, что текст «до» не совпадает с текстом «после», значит, имеются лишние пробелы в начале или в конце. Такие данные и будут соответствующим образом помечены.
Достаточно просто, но весьма полезно.
Подсветка дат и сроков.
Довольно часто приходится выделять определенные даты, чтобы, к примеру, не пропустить предстоящие мероприятия, подготовить будущие отгрузки и т.д. И, конечно же, нужно делать это при помощи программы, а не вручную.
Начнем с простого способа.
У нас имеется множество дат, из которых нам нужно выбрать и выделить те, которые принадлежат к прошлому месяцу. Для этого, как и ранее, выбираем инструмент — Правила выделения ячеек – Дата. И далее из раскрывающегося списка выбираем нужную нам опцию, а также стиль оформления.
Все достаточно просто, но список вариантов здесь весьма ограничен. Поэтому попробуем второй, более сложный, но зато и более универсальный способ. Как вы уже, наверное, догадались, вновь будем использовать формулы.
Итак, обратите внимание на дату отгрузки.
Если она в прошлом и товар уже поставлен – можно не волноваться. Если она в будущем – значит, мы должны держать вопрос на контроле и не забыть организовать поставку к указанному сроку. И, наконец, если дата отгрузки совпадает с сегодняшней или с завтрашней, то надо бросать все дела и заниматься именно этой партией в данный момент (наивысший приоритет).
Таким образом, мы имеем 3 группы условий, которые сразу же запишем в виде правил условного форматирования:
- Сегодняшняя или завтрашняя дата (1):
=ИЛИ($E5-$C$2=1;$E5=$C$2)
- Будущая дата (2):
=$E5>$C$2
- Прошедшая дата – все остальные.
Обратите внимание на порядок следования формул. Формула, находящаяся выше, имеет более высокий приоритет, поскольку выполняется раньше. Поэтому мы в начале выделяем только сегодняшнюю и завтрашнюю даты, затем – все остальные в будущем. Если ваш файл выглядит не так, как на рисунке, при помощи клавиш «вверх-вниз» (3) просто измените порядок расположения условий.
Ну а с датами, которые уже прошли, мы просто ничего не делаем. Они остаются «естественного» цвета.
И еще один пример. Выделим выходные дни.
В столбце А нашей таблицы находятся даты. Выделяем все их при помощи мыши, затем уже знакомым нам способом используем формулу для определения условия форматирования.
=ЕСЛИ(ЕПУСТО(A1);ЛОЖЬ;ИЛИ(ДЕНЬНЕД(A1;2)=6;ДЕНЬНЕД(A1;2)=7))
Давайте разбираться, как это работает.
Если клетка пустая, то возвращаем ЛОЖЬ и не меняем ее вид. В этом нам поможет функция ЕПУСТО, которая станет условием в функции ЕСЛИ.
=ЕСЛИ(ЕПУСТО(A1);ЛОЖЬ;[условие если не пустая])
В случае, коли она не пустая, тогда проверяем выполнение одного из двух условий:
ДЕНЬНЕД(A1;2)=6 и ДЕНЬНЕД(A1;2)=7
Функция ДЕННЕД с аргументом 2 помогает нам определить номер дня недели по дате. 6 и 7 день – выходные в привычном для нас исчислении (суббота и воскресенье).
Объединяем эти два выражения при помощи ИЛИ, что означает, что нам достаточно выполнения хотя бы одного из них. Получается
ИЛИ(ДЕНЬНЕД(A1;2)=6;ДЕНЬНЕД(A1;2)=7)
В итоге, выходные дни будут выделены так, как мы определим при помощи кнопки Формат.
Чтобы перепроверить себя, давайте используем столбец В. В B1 запишите формулу =А1 и скопируйте ее вниз для всех дат. Первоначально получится копия столбца А.
Чтобы не усложнять таблицу формулами, давайте используем формат чисел, чтобы как-то иначе представить эти даты.
Выделите их и нажмите комбинацию клавиш CTRL и 1. В появившемся окне выберите «Все форматы» и в поле «Тип» впишите 4 латинских буквы d (как на рисунке). И вот у вас дата преобразована в день недели без всяких формул!
И, как можете сами убедиться, что нами выделены именно субботы и воскресенья.
Как скрыть содержимое ячейки по условию?
Частенько при заполнении различных форм необходимо дождаться полного ввода всех данных, и только после этого показывать результат. Это можно сделать при помощи логических выражений и функции ЕСЛИ, когда вычисления будут выполняться только при определенном условии.
Функция ЕСЛИ в Excel – примеры использования
Разберем небольшой пример:
Итог появляется только тогда, когда заполнены все клетки. И вот как сделана строка итогов:
Обратите внимание, что изначально применен белый шрифт на белом фоне. А затем после заполнения данных по всем кварталам мы его изменим, чтобы число стало видимым.
Для диапазона B6:C6 установите желаемый фон ячеек, а цвет шрифта установите на «Авто» либо принудительно установите белый.
Формула правила форматирования:
=СЧЁТ($C$2:$C$5)=4
просто подсчитывает количество чисел в диапазоне. Если введены все четыре, то изменится оформление итогов и они станут видны. А в обычном состоянии вы их просто не увидите из-за белого цвета шрифта.
Подсветка ячеек с формулами.
Рассмотрим еще один подход, который поможет проконтролировать правильность ввода данных. Предположим, у нас есть числовые данные. Необходимо проверить, не получены ли какие-либо из них при помощи формул, поскольку все они должны быть введены вручную.
Проверим наличие формулы в ячейке при помощи функции ЕФОРМУЛА (ISFORMULA).
=ЕФОРМУЛА(B2:D13)
Обратите внимание, что абсолютные ссылки здесь не нужны.
В результате клетки, содержащие формулы, будут выделены.
Возможно, больший интерес представляет альтернативный вариант этой формулы, который позволит выделить места, где руками введены какие-то цифры или текст без использования формул.
Используем функцию НЕ (NOT), которая изменит логический результат на противоположный:
=НЕ(ЕФОРМУЛА(B2:D13))
Теперь мы выделили области, где нет формул, а данные просто введены вручную. Возможно, это будет полезно в таблицах с большим количеством формул и ссылок. И если одна из них будет заменена числом, то при последующем изменении данных в таблице многие расчеты окажутся неверными.
Чтобы попытка пользователя заменить формулу числом была быстро обнаружена, такой метод подойдет очень неплохо.
Выделение пустых ячеек либо с ошибками.
В MS Excel цвет ячейки бывает полезно изменить не только в зависимости от значения, но и если никакого значения нет либо вовсе возникла какая-то ошибка. Часто бывает необходимо, чтобы на подобные случаи в таблице было обращено особое внимание. В особенности это касается ошибок. Сделать это достаточно просто.
Выделяем всю таблицу, и затем вновь используем формулу в правиле условного форматирования. Нам будут нужны две функции: ЕОШИБКА (IsError) и ЕПУСТО (IsBlank).
Можно создать два условия:
=ЕОШИБКА($B$2:$M$25)
=ЕПУСТО($B$2:$M$25)
Либо объединить их в одно при помощи ИЛИ:
=ИЛИ(ЕОШИБКА($B$2:$M$25);ЕПУСТО($B$2:$M$25))
Естественно, диапазоны здесь вы указываете свои.
Нажмите кнопку «Формат» и выберите подходящий для вас вариант оформления.
Подсветка недопустимых значений.
Когда часто приходится вводить в таблицу повторяющиеся данные, то обычно прибегают к помощи выпадающего списка.
Как создать выпадающий список в Excel — читайте подробнее.
Можно применить защиту листа и запретить вводить какие-либо данные в определенные позиции. Однако, можно просто закрасить клетку, в которую введено неверное значение. Так мы подадим сигнал пользователю о том, что информация записана с ошибкой.
Для этого нам в первую очередь понадобится список допустимых значений. Думаю, лучше его разместить на отдельном листе рабочей книги, чтобы он не мешал основным данным и при этом всегда был под рукой. Назовем этот лист City и запишем там допустимые названия городов. Вот примерно так:
Итак, на втором листе City есть список допустимых названий.
Мы должны изменить цвет D5 на красный, если выполняется 2 условия:
1. значение не совпадает с допустимыми;
2. она не пустая.
Чтобы проверить первое условие, в правиле условного форматирования можно использовать функцию СЧЕТЕСЛИ (COUNTIF).
Она определяет, сколько раз записанное значение встречается в эталонном списке. Если ноль раз, то значит его там нет, и то, что введено, является недопустимым, нужно исправить.
=СЧЕТЕСЛИ(D5;City!A1:A6)
Чтобы проверить второе условие, используем функцию ЕПУСТО (ISBLASNK), которая проверяет, является ли ячейка пустой, либо там что-то записано.
=ЕПУСТО(D5)
Но это проверка на то, что она пустая. Чтобы сделать проверку на то, что непустая, используем функцию НЕ (NOT). Она меняет результат выполнения логической функции на противоположное: ИСТИНА на ЛОЖЬ и наоборот. Выглядит проверка «от обратного» так:
=НЕ(ЕПУСТО(D5))
и чтобы оба эти условия выполнялись, объединим их функцией И (AND)
=И(НЕ(ЕПУСТО(D5));СЧЁТЕСЛИ(City!A1:A6;D5)=0)
Если мы введем в D5 правильное название, заливка красным исчезнет.
Хороший способ, чтобы контролировать правильность ввода. Но как по мне, то выпадающий список для контроля правильности ввода будет получше. Рекомендую:
Как создать выпадающий список в Excel при помощи формул
Меняем вид ячейки в зависимости от прочих ячеек.
До сих пор мы разбирали, как изменить оформление во связи с информацией в самой ячейке таблицы. А если нам необходимо изменить цвет или заливку ячейки в Excel в зависимости от того, как меняются данные в соседних клетках?
Давайте разберем еще один интересный вариант выделения столбца в таблице. Итак, у нас есть данные о заказах от нескольких покупателей в течении года.
Обратите внимание: в первую строку мы вводим именно даты, а не пишем руками название месяца и года. Затем применяем к B1:M1 специальный формат представления даты.
Для этого выделите этот диапазон при помощи мыши и затем в меню Главная – Число – Формат откройте выпадающий список с всевозможными форматами. Выберите последний пункт «Другие числовые форматы». Откроется окно, как показано на картинке. Или же просто нажмите комбинацию клавиш CTRL+1.
Слева в окошке «Числовые форматы» выберите в самом низу «все форматы». И затем в поле «Тип» впишите:
mmmm yyyy
Нажимаем ОК и получаем новый формат даты.
Теперь давайте выделим текущий месяц.
Выбираем все столбцы нашей таблицы с датами. В данном случае это диапазон B2:M6. Затем открываем уже знакомое нам меню функции «Условное форматирование».
Вновь используем формулу, чтобы определить условия:
=МЕСЯЦ(B$1)=МЕСЯЦ(ТДАТА())
Кстати, текущий месяц на момент написания этого материала – декабрь, то есть 12-й.
Обратите внимание на то, что используется абсолютная ссылка на первую строку, в которой записаны даты из каждого месяца. И если месяц из этой даты соответствует номеру текущего месяца, то этот столбец мы закрасим в голубой.
Теперь пойдем дальше, к более сложной задаче. Проверим в каждой из строк таблицы, были ли у покупателя заказы в последние 3 месяца. Если заказов не было, то имя такого покупателя выделим.
Посмотрите, как это будет выглядеть в декабре.
Изменять заливку мы будем в A2:A6. Но проверять выполнение условия будем в диапазоне B2:M6.
Итак, выделяем мышью A2:A6 и открываем меню – Создать правило – Использовать формулу.
Её запишем так:
=СЧЁТЕСЛИ(СМЕЩ($A2;0;МЕСЯЦ(ТДАТА())-2;1;3);»>0″)=0
Сразу заметим, что можно вместо функции ТДАТА() использовать СЕГОДНЯ(). Обе они возвращают текущую дату, только ТДАТА еще возвращает и время.
=СЧЁТЕСЛИ(СМЕЩ($A2;0;МЕСЯЦ(СЕГОДНЯ())-2;1;3);»>0″)=0
Как видите, для подсчета количества заказов мы использовали функцию СЧЕТЕСЛИ. В качестве первого аргумента ей нужно указать диапазон, а в качестве второго – условие. И она подсчитает, сколько раз в указанном диапазоне данных выполнялось это условие.
В качестве условия используем “>0”, поскольку, если заказ был, то какая-то сумма должна быть по нему указана. Кстати, не забудьте это условие заключить в двойные кавычки, чтобы не было ошибки.
Теперь разберемся с первым условием. Для наглядности запишем его здесь:
СМЕЩ($A2;0;МЕСЯЦ(ТДАТА())-2;1;3)
Чтобы возвратить диапазон данных, используем функцию СМЕЩ. Схема ее работы показана на рисунке выше. Перво-наперво нужно указать начальную точку, с которой мы начнем все действия. Пусть это будет $A2. Вновь мы делаем абсолютную ссылку на столбец, чтобы при проверке условия следующей была A3, затем A4 и так далее.
Далее мы должны указать, на сколько строк вниз нужно опуститься. Поскольку нас интересует текущая строка, то ставим 0.
Теперь нужно переместиться вправо на какое-то количество столбцов, где и будет начало (верхний левый угол) нашего диапазона. Поскольку кроме текущего месяца нас интересуют заказы еще в двух предыдущих (так всего будет 3 месяца), то смещаемся вправо на количество столбцов, равное номеру текущего месяца минус 2. Если у нас сейчас 12-й месяц, то делаем 10 шагов вправо и попадаем на октябрь, то есть столбец К. Это и есть начало нашего диапазона данных.
Следующее – указываем высоту диапазона. Поскольку интересует только текущая строка, то ставим 1.
Ну и, наконец, нужно определить, на сколько столбцов вправо будет продолжаться наш подсчет заказов. Ответ следует из нашего условия – на 3 месяца, то есть берем К, L, M. С октября по декабрь включительно – будет K2:M2. Поскольку заказов нет, то СЧЕТЕСЛИ возвратит 0. В результате условие сработает, и А2 окрасится красным. А в третьей строке в K3:M3 есть данные, поэтому А3 останется в прежнем виде.
И еще одно замечание: в январе и феврале подобное наше правило работать не будет, поскольку необходимые для проверки 3 месяца еще не прошли.
Итак, мы с вами разобрали, как в Экселе менять цвет ячейки в зависимости от значения. Если остались вопросы — пишите их в комментариях. Постараюсь ответить.
Еще полезные примеры и советы:
Сложение значений в зависимости от цвета ячеек в MS EXCEL
Просуммируем значения ячеек в зависимости от цвета их заливки. Здесь же покажем, как подсчитать такие ячейки.
Функции для суммирования значений по цвету ячеек в EXCEL не существует (по крайней мере, в EXCEL 2016 и в более ранних версиях). Вероятно, подавляющему большинству пользователей это не требуется.
Пусть дан диапазон ячеек в столбце А. Пользователь выделил цветом ячейки, чтобы разбить значения по группам.
Необходимо сложить значения ячеек в зависимости от цвета фона. Основная задача: Как нам «объяснить» функции сложения, что нужно складывать значения, например, только зеленых ячеек?
Это можно сделать разными способами, приведем 3 из них: с помощью Автофильтра, Макрофункции ПОЛУЧИТЬ.ЯЧЕЙКУ() и VBA.
С помощью Автофильтра (ручной метод)
- Добавьте справа еще один столбец с заголовком Код цвета.
- Выделите заголовки и нажмите CTRL+SHIFT+L, т.е. вызовите Автофильтр (подробнее здесь)
- Вызовите меню Автофильтра, выберите зеленый цвет
- Будут отображены только строки с зелеными ячейками
- Введите напротив каждого «зеленого» значения число 1
- Сделайте тоже для всех цветов
Введите формулу =СУММЕСЛИ(B7:B17;E7;A7:A17) как показано в файле примера (лист Фильтр) .
Для подсчета значений используйте функцию СЧЕТЕСЛИ() .
С помощью Макрофункции ПОЛУЧИТЬ.ЯЧЕЙКУ()
Сразу предупрежу, что начинающему пользователю EXCEL будет сложно разобраться с этим и следующим разделом.
Идея заключается в том, чтобы автоматически вывести в соседнем столбце числовой код фона ячейки (в MS EXCEL все цвета имеют соответствующий числовой код). Для этого нам потребуется функция, которая может вернуть этот код. Ни одна обычная функция этого не умеет. Используем макрофункцию ПОЛУЧИТЬ.ЯЧЕЙКУ(), которая возвращает код цвета заливки ячейки (она может много, но нам потребуется только это ее свойство).
Примечание: Макрофункции — это набор функций к EXCEL 4-й версии, которые нельзя напрямую использовать на листе EXCEL современных версий, а можно использовать только в качестве Именованной формулы. Макрофункции — промежуточный вариант между обычными функциями и функциями VBA. Для работы с этими функциями требуется сохранить файл в формате с макросами *.xlsm
- Сделайте активной ячейку В7(это важно, т.к. мы будем использовать относительную адресацию в формуле)
- В Диспетчере имен введите формулу =ПОЛУЧИТЬ.ЯЧЕЙКУ(63;Макрофункция!A7)
- Назовите ее Цвет
- Закройте Диспетчер имен
- Введите в ячейку В7формулу =Цвет и скопируйте ее вниз.
Сложение значений организовано так же как и в предыдущем разделе.
Макрофункция работает кривовато:
- если вы измените цвет ячейки, то макрофункция не обновит значения кода (для этого нужно опять скопировать формулу из В7вниз или выделить ячейку, нажать клавишу F2 и затем ENTER)
- функция возвращает только 56 цветов (так называемая палитра EXCEL), т.е. если цвета близки, например, зеленый и светло зеленый, то коды этих цветов могут совпасть. Подробнее об этом см. лист файла примера Colors . Как следствие, будут сложены значения из ячеек с разными цветами.
С помощью VBA
В файле примера на листе VBA приведено решение с помощью VBA. Решений может быть множество:
- можно создать кнопку, после нажатия она будет вводить код цвета в соседний столбец (реализован этот вариант).
- можно написать пользовательскую функцию, которая будет автоматически обновлять код цвета при изменении цвета ячейки (реализовать несколько сложнее);
- можно написать программу, которая будет анализировать диапазон цветных ячеек, определять количество различных цветов, вычислять в отдельном диапазоне суммы для каждого цвета (реализовать не сложно, но у каждого пользователя свои требования: ячейки с суммами должны быть в определенном месте, необходимо учесть возможность дополнения диапазона новыми значениями и пр.).
Количество и сумма ячеек по цвету в Excel
Разберем простые способы как посчитать количество, и как суммировать ячейки по цвету в Excel.
Мы часто при работе в Excel окрашиваем ячейки различными цветами для лучшей визуализации данных.
Однако, когда возникает необходимость произвести какие-либо расчеты с обработанными данными мы сталкиваемся с трудностями в связи с малыми возможностями стандартных средств Excel.
Рассмотрим две простые функции, которые дают возможность суммировать ячейки, и посчитать количество выделенных цветом ячеек.
Суммирование ячеек по цвету
Перейдем в редактор VBA, для этого в панели вкладок выбираем Разработчик -> Visual Basic (или нажимаем комбинацию клавиш Alt + F11).
Создаем новый модуль и добавляем в него следующий код (напротив каждой строчки дается пояснение к коду):
Функция СУММЦВЕТ содержит два аргумента:
- MyRange(обязательный аргумент) — диапазон ячеек для суммирования;
- MyCell(обязательный аргумент) — ячейка, по цвету заливки которой рассчитывается сумма.
Функция СУММЦВЕТ теперь будет определяться при вводе формулы в ячейку, переходим из редактора на лист Excel и воспользуемся новой функцией:
При этом, если выбранная ячейка не имеет заливки, то функция суммы ячеек по выбранному цвету также будет работать.
Подсчет количества ячеек по цвету
Чтобы посчитать ячейки одного цвета достаточно немного видоизменить функцию для подсчета суммы — вместо прибавления значения текущей ячейки (Sum = Sum + cell.Value) мы добавляем 1 (Sum = Sum + 1).
При работе с данными функциями обратите внимание на два важных момента:
- Если цвет выбранной ячейки определяется с помощью условного форматирования (т.е. цвет ячейки определяется не за счет заливки), то рассмотренные функции не сработают.
- В случае изменения раскраски ячейки в Excel формулы автоматически не пересчитываются, так как не изменяется содержимое ячейки, поэтому для корректного расчета необходимо произвести пересчет формул. Комбинация клавиш Shift + F9 пересчитает формулы на активном листе (F9 — для всей книги).
Сумма ячеек по цвету
Помечать ячейки цветом, используя заливку или цвет шрифта, очень удобно и наглядно. Если вы не дальтоник, конечно 🙂 Трудности возникают тогда, когда по такой раскрашенной таблице возникает необходимость сделать отчет. И если фильтровать и сортировать по цвету Excel в последних версиях научился, то суммировать по цвету до сих пор не умеет.
Чтобы исправить этот существенный недостаток можно использовать несложную пользовательскую функцию на Visual Basic, которая позволит нам суммировать ячейки с определенным цветом.
Откройте редактор Visual Basic:
- В Excel 2003 и старше для этого нужно выбрать в меню Сервис — Макрос — Редактор Visual Basic (Tools — Macro — Visual Basic Editor)
- В новых версиях Excel 2007-2013 перейти на вкладку Разработчик (Developer) и нажать кнопку Visual Basic. Если такой вкладки у вас не видно, то включите ее в настройках Файл — Параметры — Настройка ленты (File — Options — Customize Ribbon)
В окне редактора вставьте новый модуль через меню Insert — Module и скопируйте туда текст вот такой функции:
Если теперь вернуться в Excel, то в Мастере функций (Вставка — Функция) в появившейся там категории Определенные пользователем (User Defined) можно найти нашу функцию и вставить ее на лист:
У нее два аргумента:
- DataRange — диапазон раскрашенных ячеек с числами
- ColorSample — ячейка, цвет которой принимается как образец для суммирования
Цвет шрифта
Легко изменить нашу функцию, чтобы она учитывала не цвет заливки фона, а цвет шрифта ячейки. Для этого в строке 6 просто замените свойство Interior на Font в обеих частях выражения.
Количество вместо суммы
Если вам нужно подсчитывать не сумму покрашенных определенным цветом ячеек, а всего лишь их количество, то наша функция будет еще проще. Замените в ней 7-ю строку на:
Нюансы пересчета
К сожалению изменение цвета заливки или цвета шрифта ячейки Excel не считает изменением ее содержимого, поэтому не запускает пересчет формул. То есть при перекрашивании исходных ячеек с числами в другие цвета итоговая сумма по нашей функции пересчитываться не будет.
Полностью решить эту проблему невозможно, но можно ее существенно облегчить. Для этого в третьей строке нашей функции используется команда Application.Volatile True. Она заставляет Excel пересчитывать результаты нашей функции при изменении любой ячейки на листе (или по нажатию F9).
И помните о том, что наша функция перебирает все (и пустые тоже) ячейки в диапазоне DataRange и не задавайте в качестве первого аргумента целый столбец — «думать» будет долго 🙂
Как в Excel выделить ячейки цветом по условию
Допустим, что одним из наших заданий является ввод информации о том, делал ли заказ клиент в текущем месяце. После чего на основе полученной информации необходимо выделить цветом ячейки по условию: какой из клиентов не совершил ни одного заказа на протяжении последних 3-х месяцев. Для таких клиентов нужно будет повторно выслать предложение.
Естественно это задание для Экселя. Программа должна автоматически найти таких контрагентов и соответственно выделить их цветом. Для этих условий будем использовать условное форматирование.
Автоматическое заполнение ячеек датами
Сначала подготовим структуру для заполнения регистра. В первую очередь условно рассмотрим готовый пример автоматизированного регистра, который изображен ниже на рисунке:
Пользователю только необходимо указать если клиент совершал заказ в текущем месяце, то в соответствующую ячейку следует вводить текстовое значение «заказ». Главное условие для выделения: если на протяжении 3-х месяцев контрагент не сделал ни одного заказа, его номер автоматически выделяется красным цветом.
Представленное данное решение должно автоматизировать некоторые рабочие процессы и упростить визуальный анализ данных.
Автоматическое заполнение ячеек актуальными датами
В первую очередь для регистра с номерами клиентов создадим заголовки столбцов с зеленым цветом и актуальными месяцами, которые будут автоматически отображать периоды времени. Для этого в ячейку B1 введите следующую формулу:
Как работает формула для автоматической генерации уходящих месяцев?
На рисунке формула возвращает период уходящего времени начиная даты написания статьи: 17.09.2017. В первом аргументе в функции DATA – вложена формула, которая всегда возвращает текущий год на сегодняшнюю дату благодаря функциям: ГОД и СЕГОНЯ. Во втором аргументе указан номер месяца (-1). Отрицательное число значит, что нас интересует какой был месяц в прошлом времени. Пример условий для второго аргумента со значением:
- 1 – значит первый месяц (январь) в году указанном в первом аргументе;
- 0 – это 1 месяца назад;
- -1 – это 2 мес. назад от начала текущего года (то есть: 01.10.2016).
Последний аргумент – это номер дня месяца указано во втором аргументе. В результате функция ДАТА собирает все параметры в одно значение и формула возвращает соответственную дату.
Далее перейдите в ячейку C1 и введите следующую формулу:
Как видно теперь функция ДАТА использует значение из ячейки B1 и увеличивает номер месяца на 1 по отношению к предыдущей ячейки. В результате получаем 1 – число следующего месяца.
Теперь скопируйте эту формулу из ячейки C1 в остальные заголовки столбцов диапазона D1:L1.
Выделите диапазон ячеек B1:L1 и выберите инструмент: «ГЛАВНАЯ»-«Ячейки»-«Формат ячеек» или просто нажмите комбинацию клавиш CTRL+1. В появившемся диалоговом окне, на вкладке «Число», в разделе «Числовые форматы:» выберите опцию «(все форматы)». В поле «Тип:» введите значение: МММ.ГГ (обязательно буквы в верхнем регистре). Благодаря этому мы получим укороченное отображение значения дат в заголовках регистра, что упростит визуальный анализ и сделает его более комфортным за счет лучшей читабельности.
Обратите внимание! При наступлении января месяца (D1), формула автоматически меняет в дате год на следующий.
Как выделить столбец цветом в Excel по условию
Теперь необходимо выделить ячейки цветом, касающиеся текущего месяца. Благодаря этому мы с легкостью найдем столбец, в который нужно вводить актуальные данные в этом месяце. Для этого:
- Выделите диапазон ячеек B2:L15 и выберите инструмент: «ГЛАВНАЯ»-«Стили»-«Условное форматирование»-«Создать правило». А в появившемся окне «Создание правила форматирования» выберите опцию: «Использовать формулу для определения форматируемых ячеек»
- В поле ввода введите формулу:
- Щелкните на кнопку «Формат» и укажите на вкладке «Заливка» каким цветом будут выделены ячейки актуального месяца. Например – зеленый. После чего на всех окнах для подтверждения нажмите на кнопку «ОК».
Столбец под соответствующим заголовком регистра автоматически подсвечивается зеленым цветом соответственно с нашими условиями:
Как работает формула выделения столбца цветом по условию?
Благодаря тому, что перед созданием правила условного форматирования мы охватили всю табличную часть для введения данных регистра, форматирование будет активно для каждой ячейки в этом диапазоне B2:L15. Смешанная ссылка в формуле B$1 (абсолютный адрес только для строк, а для столбцов – относительный) обусловливает, что формула будет всегда относиться к первой строке каждого столбца.
Автоматическое выделение цветом столбца по условию текущего месяца
Главное условие для заполнения цветом ячеек: если в диапазоне B1:L1 находиться та же дата, что и первого дня текущего месяца, тут же ячейки в целом столбце изменяют свой цвет на указанный в условном форматировании.
Обратите внимание! В условиях этой формулы, для последнего аргумента функции ДАТА указано значение 1, так же, как и для формул в определении дат для заголовков столбцов регистра.
В нашем случаи — это зеленая заливка ячеек. Если мы откроем наш регистр в следующем месяце, то уже ему соответствующий столбец будет выделен зеленым цветом в независимости от текущего дня.
Табличная часть сформатирована, теперь заполним ее текстовым значением «заказ» в смешанном порядке клиентов для текущего и прошлых месяцев.
Как выделить ячейки красным цветом по условию
Теперь нам необходимо выделить красным цветом ячейки с номерами клиентов, которые на протяжении 3-х месяцев не совершили ни одного заказа. Для этого:
- Выделите диапазон ячеек A2:A15 (то есть список номеров клиентов) и выберите инструмент: «ГЛАВНАЯ»-«Стили»-«Условное форматирование»-«Создать правило». А в появившемся окне «Создание правила форматирования» выберите опцию: «Использовать формулу для определения форматируемых ячеек»
- В этот раз в поле ввода введите формулу:
- Щелкните на кнопку «Формат» и укажите красный цвет на вкладке «Заливка». После чего на всех окнах нажмите «ОК».
- Заполоните ячейки текстовым значением «заказ» как на рисунке и посмотрите на результат:
Номера клиентов подсвечиваются красным цветом, если в их строке нет значения «заказ» в последних трех ячейках к текущему месяцу (включительно).
Анализ формулы для выделения цветом ячеек по условию:
Сначала займемся средней частью нашей формулы. Функция СМЕЩ возвращает ссылку на диапазон смещенного по отношении к области базового диапазона определенной числом строк и столбцов. Возвращаемая ссылка может быть одной ячейкой или целым диапазоном ячеек. Дополнительно можно определить количество возвращаемых строк и столбцов. В нашем примере функция возвращает ссылку на диапазон ячеек для последних 3-х месяцев.
Важная часть для нашего условия выделения цветом находиться в первом аргументе функции СМЕЩ. Он определяет, с какого месяца начать смещение. В данном примере – это ячейка D2, то есть начало года – январь. Естественно для остальных ячеек в столбце номер строки для базовой ячейки будет соответствовать номеру строки в котором она находиться. Следующие 2 аргумента функции СМЕЩ определяют на сколько строк и столбцов должно быть выполнено смещение. Так как вычисления для каждого клиента будем выполнять в той же строке, значение смещения для строк указываем –¬ 0.
В тоже время для вычисления значения третьего аргумента (смещение по столбцам) используем вложенную формулу МЕСЯЦ(СЕГОДНЯ()), Которая в соответствии с условиями возвращает номер текущего месяца в текущем году. От вычисленного формулой номера месяца отнимаем число 4, то есть в случаи Ноября получаем смещение на 8 столбцов. А, например, для Июня – только на 2 столбца.
Последнее два аргумента для функции СМЕЩ определяют высоту (в количестве строк) и ширину (в количестве столбцов) возвращаемого диапазона. В нашем примере – это область ячеек с высотой на 1-ну строку и шириной на 4 столбца. Этот диапазон охватывает столбцы 3-х предыдущих месяцев и текущий.
Первая функция в формуле СЧЕТЕСЛИ проверяет условия: сколько раз в возвращаемом диапазоне с помощью функции СМЕЩ встречается текстовое значение «заказ». Если функция возвращает значение 0 – значит от клиента с таким номером на протяжении 3-х месяцев не было ни одного заказа. А в соответствии с нашими условиями, ячейка с номером данного клиента выделяется красным цветом заливки.
Если мы хотим регистрировать данные по клиентам, Excel идеально приспособлен для этой цели. С легкостью можно записывать в соответствующие категории число заказанных товаров, а также даты реализации транзакций. Проблема постепенно начинает возникать с ростом объема данных.
Если их так много, что тратим несколько минут на поиск конкретной позиции регистра и анализ введенной информации. В таком случае стоит добавить в таблицу регистра механизмы, для автоматизации некоторых рабочих процессов пользователя. Что мы и сделали.
В Microsoft Excel, при создании таблиц, очень удобно и наглядно помечать ячейки цветом. Но что делать, если нам понадобиться суммировать значения ячеек одного цвета? По умолчанию, данной функции в Excel до сих пор нет. Решить эту проблему можно написав макрос в Visual Basic.
Для этого в Excel версии 2007-2013 переходим на вкладку Разработчик и нажимаем Visual Basic.
Если такой вкладки нет, то включаем ее следующим образом: Файл/Параметры/Настройка ленты и ставим галочку напротив слова Разработчик.
В открывшемся окне редактора нажимаем Insert/Module и копируем туда следующий текст:
Public Function SumByColor(DataRange As Range, ColorSample As Range) As Double Dim Sum As Double Application.Volatile True For Each cell In DataRange If cell.Interior.Color = ColorSample.Interior.Color Then Sum = Sum + cell.Value End If Next cell SumByColor = Sum End Function
Сохраняем изменения. Далее в Excel на вкладке Формулы выбираем пункт Вставить функцию. Необходимо выбрать категорию Определенные пользователем – тогда отобразится наша функция – SumByColor.
У этой функции 2 аргументы:
DataRange – диапазон ячеек с числами;
ColorSample – ячейка, цвет которой является образцом для суммирования.
Вот и все. Данная функция корректно работает на последних версиях Excel. Надеюсь, она пригодится Вам при составлении отчетов.
Привет, уважаемые читатели. Когда-нибудь вам доводилось работать с огромными данными в таблице? Знаете, с ними гораздо удобнее будет работать, если знать, как выделить несколько ячеек Excel различным цветом при определенном условии. Хотели бы вы узнать, как это делается? В этом уроке мы сделаем так, чтобы менялся цвет ячейки в зависимости от значения Excel, а также окрасим все ячейки с помощью поиска.
Цвет заливки меняется вместе со значением
Для примера мы потренируемся на том, чтобы ячейка меняла цвет в данной таблице при определенном условии. Да ни одна, а все со значением в диапазоне от 60 до 90. Для этого мы воспользуемся функцией «Условное форматирование».
Для начала выделите тот диапазон данных, который мы будем форматировать.
Далее находим на вкладке «Главная» кнопку «Условное форматирование» и в списке выбираем «Создать правило».
У нас открылось окно «Создание правил форматирования». В этом окне выбираем тип правила: «Форматировать только ячейки, которые содержат».
Далее, переходим к разделу «Измените описание правила», где нужно указать те условия, по которым будет выполнена заливка. В этом разделе можно выставить самые различные условия, при которых она будет меняться.
В нашем случае необходимо поставить следующие: «значения ячейки» и «между». Так же мы обозначаем диапазон, что при условии значения от 60 до 90 будет применена заливка. Посмотрите на скриншоте, как это сделал я.
Конечно же при работе с вашей таблицей может потребоваться заполнить совсем другими условиями, которые вы и будете указывать, ну, а сейчас мы всего лишь тренируемся.
Если вы заполнили, то не спешите кликать по кнопке «ОК». Прежде необходимо нажать на кнопку «Формат», как на скриншоте, и перейти к настройке заливки.
Хорошо, как видите, у вас открылось окно «Формат ячейки». Здесь вам необходимо перейти на вкладку «Заливка», где вы выбираете нужную, и нажать на «ОК» в этом окне и в предыдущем. Я выбрал зеленую заливку.
Посмотрите на свой результат. Думаю, у вас все получилось. У меня точно получилось. Взгляните на скриншот:
Окрасим ячейку в определенный цвет, если она равна чему-то
Давайте вернемся к нашей таблице в изначальном виде. И теперь мы поменяем цвет там, где содержится цифра 40 на красный, а с цифрой 50 на желтый. Конечно, для этого дела можно воспользоваться первым способом, но мы же хотим знать больше возможностей Excel.
В этот раз мы воспользуемся функцией «Найти и заменить».
Выделите тот участок таблицы, в который будем вносить изменения. Если это весь лист, то выделять нет смысла.
Теперь время открыть окно поиска. На вкладке «Главная» в разделе «Редактирование» нажмите на кнопку «Найти и выделить».
Можно же и горячими клавишами пользоваться: CTRL + F
В поле «Найти» мы указываем то, что ищем. В данном случае пишем «40», а затем жмем кнопку «Найти все».
Теперь, когда ниже были показаны результаты поиска, выберите одно из них и нажмите на сочетание CTRL + A, чтобы выбрать их все сразу. А затем нажмите на «Закрыть», чтобы убрать окно «Найти и заменить».
Когда у нас выбраны все, содержащие цифру 40, на вкладке «Главная» в разделе «Шрифт» выберите окраску ячейки. У нас это красный. И, как вы видите у себя на экране, так и у меня на скриншоте, нам удалось их закрасить в красный.
Теперь нужно выполнить те же самые действия, чтобы окрасить те, где указано число 50. Думаю, теперь вам понятно, как сделать это.
У вас получилось? А посмотрите, что вышло у меня.
Этот способ работает в Экселе разных версий — 2007, 2010, 2013, 2016, 2019.
На этом все. Сегодня мы научились менять цвет ячейки в зависимости от ее значения, причем не важно текст это или цифры. Спасибо, друзья. Подписывайтесь, комментируйте, вступайте в группу, делитесь в соц сетях и будьте всегда в курсе новых статей. А также, не забывайте изучать и другие статьи на этом сайте.
Немного юмора:
Самая большая ложь 21 века — «Я прочёл и принимаю условия пользовательского соглашения».