На чтение 5 мин Опубликовано 12.01.2021
В Microsoft Office Excel, начиная с версии 2007 года, появилась возможность сортировки и фильтрации ячеек табличного массива по цвету. Такая функция позволяет быстрее ориентироваться в таблице, повышает ее презентабельность и эстетичность. В данной статье будут рассмотрены основные способы фильтрации информации в Excel по цвету.
Содержание
- Особенности фильтрации по цвету
- Как отфильтровать данные по цвету с помощью встроенной в Excel опции
- Как в Excel отсортировать данные по нескольким цветам
- Как отфильтровать сведения в таблице по цвету с помощью пользовательской функции
- Заключение
Особенности фильтрации по цвету
Прежде чем переходить к рассмотрению способов фильтрации данных по цвету, необходимо проанализировать преимущества, которые дает такая процедура:
- Структурирование и упорядочение информации, что позволяет выделить нужный фрагмент таблички и быстро найти его в большом диапазоне ячеек.
- Выделенные цветом ячейки с важной информацией в дальнейшем можно будет проанализировать.
- Фильтрация по цвету выделяет сведения, удовлетворяющие заданным критериям.
Как отфильтровать данные по цвету с помощью встроенной в Excel опции
Алгоритм фильтрации информации по цвету в табличном массиве Excel подразделяется на следующие этапы:
- Выделить требуемый диапазон ячеек левой клавишей манипулятора и переместиться во вкладку «Главная», находящуюся в верхней панели инструментов программы.
- В появившейся области в подразделе Редактирование необходимо найти кнопку «Сортировка и фильтр» и развернуть ее, нажав на стрелочку внизу.
- В отобразившемся меню нажать по строчке «Фильтр».
- Когда фильтр добавится, то в названии столбцов таблицы появятся небольшие стрелочки. На этом этапе по любой из стрелок пользователю нужно кликнуть ЛКМ.
- После нажатия по стрелке в названии столбика отобразится похожее меню, в котором надо щелкнуть по строке Фильтр по цвету. Раскроется дополнительная вкладка с двумя доступными функциями: «Фильтр по цвету ячейки» и «Фильтр по цвету шрифта».
- В разделе «Фильтр по цвету ячейки» выбрать оттенок, по которому нужно отфильтровать исходную таблицу, нажав на него ЛКМ.
- Проверить результат. После проделывания вышеуказанных манипуляций в таблице останутся только ячейки с указанным ранее цветом. Остальные элементы пропадут, а табличка сократится.
Отфильтровать данные в массиве Excel можно вручную, удалив строки и столбцы с ненужными цветами. Однако пользователю придется потратить на выполнение этого процесса дополнительное время.
Если выбрать нужный оттенок в разделе «Фильтр по цвету шрифта», то в таблице останутся только строчки, текст шрифта в которых прописан выбранным цветом.
Обратите внимание! В Microsoft Office Excel у функции фильтрации по цвету есть существенный недостаток. Пользователь может выбрать только один оттенок, по которому будет производиться фильтрация табличного массива. Указать несколько цветов сразу невозможно.
Как в Excel отсортировать данные по нескольким цветам
С сортировкой по цветам в Экселе обычно проблем не возникает. Она выполняется аналогичным образом:
- По аналогии с предыдущим пунктом добавить фильтр к табличному массиву.
- Щелкнуть по стрелочке, появившейся в названии столбца, и в выпадающем меню выбрать пункт «Сортировка по цвету».
- Указать требуемый тип сортировки, к примеру выбрать нужный оттенок в колонке «Сортировка по цвету ячейки».
- После выполнения предыдущих манипуляций строчки таблицы с выбранным ранее оттенком будут располагаться на первом месте массива по порядку. Также можно отсортировать и остальные цвета.
Дополнительная информация! Отсортировать данные в табличке также можно с помощью функции «Настраиваемая сортировка», добавив несколько уровней по цветам.
Как отфильтровать сведения в таблице по цвету с помощью пользовательской функции
Чтобы в Microsoft Office Excel выбрать фильтр для отображения сразу нескольких цветов в таблице, необходимо создать дополнительный параметров с оттенком заливки. По созданному оттенку данные в дальнейшем и будут фильтроваться. Пользовательская функция в Эксель создается по следующей инструкции:
- Зайти в раздел «Разработчик», который находится сверху главного меню программы.
- В открывшейся области вкладки кликнуть по кнопке «Visual Basic».
- Откроется встроенный в программу редактор, в котором потребуется создать новый модуль и прописать код.
Чтобы применить созданную функцию, необходимо:
- Вернуться на рабочий лист Excel и создать два новый столбца рядом с исходной таблицей. Их можно назвать «Цвет ячейки» и «Цвет текста» соответственно.
- В первом столбце написать формулу «= ColorFill()». В скобках указывается аргумент. Нужно кликнуть по ячейке с любым цветом в табличке.
- Во втором столбике указать тот же самый аргумент, но только с функцией «=ColorFont()».
- Растянуть получившиеся значения до конца таблицы, продлив формулу на весь диапазон. Полученные данные отвечают за цвет каждой ячейки в таблице.
- Добавить фильтр в табличный массив по рассмотренной выше схеме. Данные будут отсортированы по цвету.
Важно! Сортировка в Excel с помощью пользовательской функции выполняется аналогичным образом.
Заключение
Таким образом, в MS Excel можно быстро отфильтровать исходный табличный массив по цвету ячеек различными методами. Основные способы фильтрации и сортировки, которыми рекомендуется пользоваться при выполнении поставленной задачи, были рассмотрены выше.
Оцените качество статьи. Нам важно ваше мнение:
-
В диапазоне ячеек или столбце таблицы щелкните ячейку с определенным цветом, цветом шрифта или значком, по которому требуется выполнить фильтрацию.
-
На вкладке Данные нажмите кнопку Фильтр.
-
Щелкните стрелку в столбце с содержимым, которое вы хотите отфильтровать.
-
В разделе Фильтр во всплывающем меню По цвету щелкните Цвет ячейки, Цвет шрифта или Значок ячейки и выберите условия.
-
В диапазоне ячеек или столбце таблицы щелкните ячейку с определенным цветом, цветом шрифта или значком, по которому вы хотите выполнить фильтрацию.
-
На панели инструментов Стандартная нажмите кнопку Фильтр .
-
Щелкните стрелку в столбце с содержимым, которое нужно отфильтровать.
-
В разделе Фильтр во всплывающем меню По цвету щелкните Цвет ячейки, Цвет шрифта или Значок ячейки и выберите цвет.
Создатели Excel решили, начиная от 2007-ой версии ввести возможность сортировки данных по цвету. Для этого послужило поводом большая потребность пользователей предыдущих версий, упорядочивать данные в такой способ. Раньше реализовать сортировку данных относительно цвета можно было только с помощью создания макроса VBA. Создавалась пользовательская функция и вводилась как формула под соответствующим столбцом, по которому нужно было выполнить сортировку. Теперь такие задачи можно выполнять значительно проще и эффективнее.
Сортировка по цвету ячеек
Пример данных, которые необходимо отсортировать относительно цвета заливки ячеек изображен ниже на рисунке:
Чтобы расположить строки в последовательности: зеленый, желтый, красный, а потом без цвета – выполним следующий ряд действий:
- Щелкните на любую ячейку в области диапазона данных и выберите инструмент: «ДАННЫЕ»-«Сортировка и фильтр»-«Сортировка».
- Убедитесь, что отмечена галочкой опция «Мои данные содержат заголовки», а после чего из первого выпадающего списка выберите значение «Наименование». В секции «Сортировка» выберите опцию «Цвет ячейки». В секции «Порядок» раскройте выпадающее меню «Нет цвета» и нажмите на кнопку зеленого квадратика.
- Нажмите на кнопку «Копировать уровень» и в этот раз укажите желтый цвет в секции «Порядок».
- Аналогичным способом устанавливаем новое условие для сортировки относительно красного цвета заливки ячеек. И нажмите на кнопку ОК.
Ожидаемый результат изображен ниже на рисунке:
Аналогичным способом можно сортировать данные по цвету шрифта или типу значка которые содержат ячейки. Для этого достаточно только указать соответствующий критерий в секции «Сортировка» диалогового окна настройки условий.
Фильтр по цвету ячеек
Аналогично по отношению к сортировке, функционирует фильтр по цвету. Чтобы разобраться с принципом его действия воспользуемся тем же диапазоном данных, что и в предыдущем примере. Для этого:
- Перейдите на любую ячейку диапазона и воспользуйтесь инструментом: «ДАННЫЕ»-«Сортировка и фильтр»-«Фильтр».
- Раскройте одно из выпадающих меню, которые появились в заголовках столбцов таблицы и наведите курсор мышки на опцию «Фильтр по цвету».
- Из всплывающего подменю выберите зеленый цвет.
В результате отфильтруються данные и будут отображаться только те, которые содержать ячейки с зеленым цветом заливки:
Обратите внимание! В режиме автофильтра выпадающие меню так же содержит опцию «Сортировка по цвету»:
Как всегда, Excel нам предоставляет несколько путей для решения одних и тех же задач. Пользователь выбирает для себя самый оптимальный путь, плюс необходимые инструменты всегда под рукой.
Содержание
- 1 Стандартный фильтр и сортировка по цвету в Excel
- 2 Сортировка и фильтр по цвету с помощью функций
- 2.1 Функция цвета заливки ячейки на VBA
- 2.2 Функция цвета текста ячейки на VBA
- 3 Замечания
- 4 Сортировка по цвету ячеек
- 5 Фильтр по цвету ячеек
Рассмотрим основные способы фильтрации и сортировки данных по цвету (как по заливке ячейки, так и по заливке текста) в Excel.
Для начала вспомним, в чем же польза от сортировки и фильтрации данных в Excel, и зачем она вообще нужна?
При проведении анализа данных сортировка и фильтрация помогают структурировать, упорядочивать данные или производить поиск.
К примеру, ячейки или диапазоны данных можно окрашивать в различные цвета с целью выделения конкретных данных, которые в последствии можно дополнительно проанализировать.
При этом фильтрация позволяет показать только те данные, которые удовлетворяют заданным критериям, и соответственно, скрыть те данные, которые не подходят по условию.
Сортировка же показывает все данные, однако упорядочивает их согласно заданным критериям.
В общем случае в Excel можно сортировать по алфавиту (для текста), по возрастанию или убыванию (для чисел), однако давайте познакомимся с еще одним вариантом сортировки — по цвету, и рассмотрим 2 способа, позволяющие сортировать и применять фильтр к данным:
- Автофильтр и инструмент «Настраиваемая сортировка» (доступен начиная с версии Excel 2007);
- Применение пользовательских функций.
Предположим, что у нас имеется таблица с наименованиями и выручкой по различным продуктам, где определенные категории дополнительно выделены цветом заливки ячейки и текста:
Добавим фильтр к диапазону с таблицей (выбираем вкладку Главная -> Редактирование -> Сортировка и фильтр или воспользуемся сочетанием клавиш Ctrl + Shift + L), далее щелкаем по стрелке в заголовке столбца и в выпадающем списке можем выбрать любой вариант сортировки или фильтрации:
Из недостатков данного способа фильтрации можно отметить невозможность отфильтровать диапазон по нескольким цветам.
С сортированием подобных проблем не возникает, для этого необходимо последовательно отсортировать данные по заданным цветам.
Например, если мы хотим, чтобы сначала в таблице были показаны ячейки с красной заливкой, а затем с синей, то на первом шаге сделаем сортировку по синей заливке (т.е. сортируем данные в обратном порядке — если в конечном итоге нужен порядок ячеек красный -> синий, то сортируем в порядке синий -> красный):
В результате синие ячейки расположились вверху таблицы, однако остальные идут вразнобой и не упорядочены.
На втором шаге повторно произведем сортирование данных, но на этот раз выберем в качестве критерия сортировки красную заливку:
Аналогичного результата также можно добиться отсортировав данные с помощью инструмента Настраиваемая сортировка (также выбираем вкладку Главная -> Редактирование -> Сортировка и фильтр), где можно настроить различные дополнительные параметры и уровни сортировки:
Сортировка и фильтр по цвету с помощью функций
Как мы выяснили стандартным способом отфильтровать данные по нескольким цветам не получится, однако это ограничение можно обойти с помощью создания дополнительного параметра с цветом заливки (или текста), по которому далее и будем сортировать или фильтровать данные.
Функция цвета заливки ячейки на VBA
Для создания пользовательских функций перейдем в редактор Visual Basic (комбинация клавиш Alt + F11), создадим новый модуль и добавим туда код следующей функции:
Public Function ColorFill(MyCell As Range) ColorFill = MyCell.Interior.ColorIndex End Function |
Функция ColorFill в качестве значения возвращает числовой код цвета заливки ячейки, она очень схожа с функцией, которую мы использовали при подсчете количества и суммирования ячеек по цвету.
Вернемся в Excel и применим новую функцию ColorFill — либо непосредственно введем формулу в ячейку, либо вызовем ее с помощью мастера функций (выбрав из категории Определенные пользователем).
В дополнительном столбце прописываем код заливки ячейки:
Далее мы можем сортировать или применять фильтр к данным уже по новому параметру.
К примеру, для того, чтобы отфильтровать таблицу по красной и зеленой заливке ячеек, в фильтре укажем соответствующие каждой заливке числовые коды:
Функция цвета текста ячейки на VBA
В случае если мы хотим проанализировать ячейки по цвету текста, то нужно будет внести небольшие изменения в код функции:
Public Function ColorFont(MyCell As Range) ColorFont = MyCell.Font.ColorIndex End Function |
Функция ColorFont в качестве значения возвращает числовой код цвета шрифта ячейки и принцип ее применения аналогичен примеру рассмотренному выше.
Замечания
К сожалению, при работе с пользовательскими функциями ColorFill и ColorFont есть несколько подводных камней:
- Они не работают с ячейками, в которых заливка определяется условным форматированием;
- При изменении раскраски ячейки в Excel формулы автоматически не пересчитываются, в связи с этим пересчет нужно сделать самостоятельно (Shift + F9 для пересчета формул только на активном листе, F9 — для всей книги).
Удачи вам и до скорых встреч на страницах блога Tutorexcel.ru!
Создатели Excel решили, начиная от 2007-ой версии ввести возможность сортировки данных по цвету. Для этого послужило поводом большая потребность пользователей предыдущих версий, упорядочивать данные в такой способ. Раньше реализовать сортировку данных относительно цвета можно было только с помощью создания макроса VBA. Создавалась пользовательская функция и вводилась как формула под соответствующим столбцом, по которому нужно было выполнить сортировку. Теперь такие задачи можно выполнять значительно проще и эффективнее.
Сортировка по цвету ячеек
Пример данных, которые необходимо отсортировать относительно цвета заливки ячеек изображен ниже на рисунке:
Чтобы расположить строки в последовательности: зеленый, желтый, красный, а потом без цвета – выполним следующий ряд действий:
- Щелкните на любую ячейку в области диапазона данных и выберите инструмент: «ДАННЫЕ»-«Сортировка и фильтр»-«Сортировка».
- Убедитесь, что отмечена галочкой опция «Мои данные содержат заголовки», а после чего из первого выпадающего списка выберите значение «Наименование». В секции «Сортировка» выберите опцию «Цвет ячейки». В секции «Порядок» раскройте выпадающее меню «Нет цвета» и нажмите на кнопку зеленого квадратика.
- Нажмите на кнопку «Копировать уровень» и в этот раз укажите желтый цвет в секции «Порядок».
- Аналогичным способом устанавливаем новое условие для сортировки относительно красного цвета заливки ячеек. И нажмите на кнопку ОК.
Ожидаемый результат изображен ниже на рисунке:
Аналогичным способом можно сортировать данные по цвету шрифта или типу значка которые содержат ячейки. Для этого достаточно только указать соответствующий критерий в секции «Сортировка» диалогового окна настройки условий.
Фильтр по цвету ячеек
Аналогично по отношению к сортировке, функционирует фильтр по цвету. Чтобы разобраться с принципом его действия воспользуемся тем же диапазоном данных, что и в предыдущем примере. Для этого:
- Перейдите на любую ячейку диапазона и воспользуйтесь инструментом: «ДАННЫЕ»-«Сортировка и фильтр»-«Фильтр».
- Раскройте одно из выпадающих меню, которые появились в заголовках столбцов таблицы и наведите курсор мышки на опцию «Фильтр по цвету».
- Из всплывающего подменю выберите зеленый цвет.
В результате отфильтруються данные и будут отображаться только те, которые содержать ячейки с зеленым цветом заливки:
Обратите внимание! В режиме автофильтра выпадающие меню так же содержит опцию «Сортировка по цвету»:
Как всегда, Excel нам предоставляет несколько путей для решения одних и тех же задач. Пользователь выбирает для себя самый оптимальный путь, плюс необходимые инструменты всегда под рукой.
Из этой краткой инструкции Вы узнаете, как быстро сортировать по цвету заливки и шрифта ячейки на листе в Excel 2010 и 2013.
В одной из недавних статей мы рассматривали различные способы, как в Excel узнать количество ячеек определённого цвета и вычислить сумму значений в них. Если Вы не упустили шанс прочитать ту статью, у Вас, вероятно, возник вопрос, почему мы не уделили внимание сортировке и фильтрации ячеек по их цвету. Причина в том, что сортировка ячеек по цвету в Excel требует немного другого подхода. Далее мы рассмотрим этот вопрос подробнее.
- Сортировка по цвету заливки ячейки
- Сортировка по цвету шрифта
- Сортировка по значку
- Фильтрация ячеек в Excel по цвету заливки
Сортировка в Excel по цвету заливки ячейки
Сортировка ячеек в Excel по цвету заливки – это одна из простейших операций, наравне с подсчётом количества ячеек, суммированием и даже фильтрацией. Не потребуются ни код VBA, ни формулы. Мы просто воспользуемся инструментом «Настраиваемая сортировка», который присутствует во всех современных версиях Excel 2013, 2010 и 2007.
- Выделите свою таблицу или диапазон ячеек.
- На вкладке Главная (Home) в разделе Редактирование (Editing) нажмите кнопку Сортировка и фильтр (Sort & Filter) и в появившемся меню выберите Настраиваемая сортировка (Custom Sort).
- В диалоговом окне Сортировка (Sort) настройте параметры слева направо:
- Укажите Столбец (Column), по которому нужно выполнить сортировку (в нашем примере это столбец Delivery);
- В поле Сортировка (Sort On) выберите Цвет ячейки (Cell Color);
- Установите цвет ячеек, которые должны быть вверху;
- В крайнем правом выпадающем списке выберите Сверху (On top).
- Чтобы добавить ещё один уровень сортировки с такими же настройками, нажмите кнопку Копировать уровень (Copy Level). Затем в столбце Порядок (Order) выберите второй по порядку цвет. Таким же образом создайте столько уровней сортировки, сколько цветов надо отсортировать в таблице.
- Нажмите ОК и проверьте в правильном ли порядке расположились строки с данными.
В нашей таблице вверх переместились строки со значением Past Due (столбец Delivery), за ними следуют строки со значениями Due in и в конце – строки со значением Delivered. Все в точности, как мы настроили в диалоговом окне Сортировка (Sort).
Совет: Если ячейки раскрашены в большое количество различных цветов – не обязательно создавать правило для каждого. Настройте правила сортировки только для тех цветов, которыми отмечены действительно важные данные (в нашем примере это строки со значением Past Due), а все остальные оставьте как есть.
Если требуется отобрать ячейки только одного цвета, то можно воспользоваться ещё более быстрым способом. Кликните по стрелке автофильтра рядом с заголовком столбца, в котором нужно произвести сортировку. В открывшемся меню нажмите Сортировка по цвету (Sort by Color) и выберите, какого цвета ячейки должны оказаться вверху, а какие – внизу. Кстати, выбрав в этом меню пункт Пользовательская сортировка (Custom Sort), как показано на рисунке ниже, можно быстро перейти к диалоговому окну Сортировка (Sort).
Сортировка ячеек в Excel по цвету шрифта
Сортировка ячеек в Excel по цвету шрифта выполняется точно так же, как сортировка по цвету заливки. Снова используем инструмент Настраиваемая сортировка (Custom Sort), который находится на вкладке Главная (Home) в меню Сортировка и фильтр (Sort & Filter), но на этот раз в поле Сортировка (Sort On) выбираем Цвет шрифта (Font Color).
Если требуется отобрать ячейки с одним определённым цветом шрифта, то можно снова использовать автофильтр Excel:
Кроме упорядочивания ячеек по цвету заливки и цвету шрифта, встречаются некоторые другие задачи, когда возможность сортировать по цвету оказывается очень удобной.
Сортировка ячеек по значку
Настроим, для примера, условное форматирование с использованием наборов значков по столбцу Qty., где указано количество заказов (см. рисунок ниже):
Как видите, мы отметили крупные заказы (с количеством более 6) красными значками, средние заказы отмечены жёлтыми значками и самые маленькие – зелёными значками. Если нужно расположить самые важные заказы в начале списка, воспользуемся инструментом Настраиваемая сортировка (Custom Sort), как это было описано выше, и настроим сортировку по признаку – Значок ячейки (Cell Icon).
Достаточно указать очерёдность для первых двух (из трёх) значков, и все строки с зелёными значками автоматически переместятся вниз таблицы.
Как в Excel фильтровать ячейки по цвету заливки
Если нужно отфильтровать ячейки в заданном столбце по цвету заливки, используйте инструмент Фильтр по цвету (Filter by Color), доступный в Excel 2010 и 2013.
Для работы этого инструмента существует ограничение – возможно отфильтровать одновременно только один цвет. Если нужно настроить фильтр для данных по двум или более цветам, выполните следующие шаги:
- Создайте вспомогательный столбец в конце таблицы или рядом со столбцом, в котором будете настраивать фильтр. Мы назовём его Filter by color.
- Во вторую ячейку только что добавленного столбца введите формулу:
=GetCellColor(F2)
Здесь F – это столбец, содержащий разукрашенные ячейки, и по которому нужно настроить фильтр, а GetCellColor() – пользовательская функция со следующим кодом VBA:
Function GetCellColor(xlRange As Range) Dim indRow, indColumn As Long Dim arResults() Application.Volatile If xlRange Is Nothing Then Set xlRange = Application.ThisCell End If If xlRange.Count > 1 Then ReDim arResults(1 To xlRange.Rows.Count, 1 To xlRange.Columns.Count) For indRow = 1 To xlRange.Rows.Count For indColumn = 1 To xlRange.Columns.Count arResults(indRow, indColumn) = xlRange(indRow, indColumn).Interior.Color Next Next GetCellColor = arResults Else GetCellColor = xlRange.Interior.Color End If End Function
- Скопируйте эту формулу во все ячейки столбца Filter by color.
- Примените автофильтр Excel и затем выберите нужные цвета по их кодам в выпадающем меню автофильтра.
В результате получится вот такая таблица, где показаны строки только с двумя выбранными цветами заливки:
На этом, пожалуй, всё на сегодня, благодарю за внимание!
Урок подготовлен для Вас командой сайта office-guru.ru
Источник: /> Перевел: Антон Андронов
Правила перепечаткиЕще больше уроков по Microsoft Excel
Оцените качество статьи. Нам важно ваше мнение:
-
1
Open your project in Excel. You can either open your spreadsheet within Excel by navigating to File > Open or by right-clicking the file in your file manager and selecting Open with > Excel.
-
2
Select the column you want to filter. To select the entire column, click the header cell (which is usually a letter).
Advertisement
-
3
Click Data. You’ll see this tab in the editing ribbon above the spreadsheet editing space.
-
4
Click Filter. This is next to an icon of a filter.
-
5
Click
next to the column that contains the data you want to filter. A window will drop-down.
-
6
Click the drop-down menu next to «By color» under the «Filter» header. You’ll want to use the color field under «Filter» since the other field is only for setting how to sort the appearance on the spreadsheet.
- You might see «Filter by color» instead.
-
7
Select either Cell color or Font color. Another menu will open to the right with color choices.
- After you make a selection, only the color you chose will appear on the spreadsheet.[1]
- After you make a selection, only the color you chose will appear on the spreadsheet.[1]
Advertisement
Ask a Question
200 characters left
Include your email address to get a message when this question is answered.
Submit
Advertisement
Thanks for submitting a tip for review!
References
About This Article
Article SummaryX
1. Open your project in Excel..
2. Select the data you want to filter by.
3. Click Data.
4. Click Filter.
5. Click the downwards-pointing arrow next to the column that contains data you want to filter.
6. Click the drop-down menu next to «By color» under the «Filter» header.
7. Select either Cell color or Font color.
Did this summary help you?
Thanks to all authors for creating a page that has been read 31,832 times.