Excel фильтр по цвету 2007

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

Сортировка по цвету ячеек

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

Данные для цветного сортирования.

Чтобы расположить строки в последовательности: зеленый, желтый, красный, а потом без цвета – выполним следующий ряд действий:

  1. Щелкните на любую ячейку в области диапазона данных и выберите инструмент: «ДАННЫЕ»-«Сортировка и фильтр»-«Сортировка».
  2. Инструмент настраиваемое сортирование.

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

  5. Нажмите на кнопку «Копировать уровень» и в этот раз укажите желтый цвет в секции «Порядок».
  6. Копировать уровень.

  7. Аналогичным способом устанавливаем новое условие для сортировки относительно красного цвета заливки ячеек. И нажмите на кнопку ОК.
  8. Добавить уровень.

Ожидаемый результат изображен ниже на рисунке:

Цветная сортировка.

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



Фильтр по цвету ячеек

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

  1. Перейдите на любую ячейку диапазона и воспользуйтесь инструментом: «ДАННЫЕ»-«Сортировка и фильтр»-«Фильтр».
  2. Включить автофильтр.

  3. Раскройте одно из выпадающих меню, которые появились в заголовках столбцов таблицы и наведите курсор мышки на опцию «Фильтр по цвету».
  4. Опция меню автофильтра.

  5. Из всплывающего подменю выберите зеленый цвет.

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

Пример цветной фильтрации.

Обратите внимание! В режиме автофильтра выпадающие меню так же содержит опцию «Сортировка по цвету»:

Альтернативная сортировка по цвету.

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

На чтение 5 мин Опубликовано 12.01.2021

В Microsoft Office Excel, начиная с версии 2007 года, появилась возможность сортировки и фильтрации ячеек табличного массива по цвету. Такая функция позволяет быстрее ориентироваться в таблице, повышает ее презентабельность и эстетичность. В данной статье будут рассмотрены основные способы фильтрации информации в Excel по цвету.

Содержание

  1. Особенности фильтрации по цвету
  2. Как отфильтровать данные по цвету с помощью встроенной в Excel опции
  3. Как в Excel отсортировать данные по нескольким цветам
  4. Как отфильтровать сведения в таблице по цвету с помощью пользовательской функции
  5. Заключение

Особенности фильтрации по цвету

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

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

Как отфильтровать данные по цвету с помощью встроенной в Excel опции

Алгоритм фильтрации информации по цвету в табличном массиве Excel подразделяется на следующие этапы:

  1. Выделить требуемый диапазон ячеек левой клавишей манипулятора и переместиться во вкладку «Главная», находящуюся в верхней панели инструментов программы.
  2. В появившейся области в подразделе Редактирование необходимо найти кнопку «Сортировка и фильтр» и развернуть ее, нажав на стрелочку внизу.

kak-otfiltrovat-dannye-v-excel-po-cvetu

Варианты сортировки и фильтрации табличных данных в Excel
  1. В отобразившемся меню нажать по строчке «Фильтр».

kak-otfiltrovat-dannye-v-excel-po-cvetu

В окне выбора нужно нажать на кнопку «Фильтр»
  1. Когда фильтр добавится, то в названии столбцов таблицы появятся небольшие стрелочки. На этом этапе по любой из стрелок пользователю нужно кликнуть ЛКМ.

kak-otfiltrovat-dannye-v-excel-po-cvetu

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

kak-otfiltrovat-dannye-v-excel-po-cvetu

Варианты фильтрации в Эксель. Здесь можно выбрать любой цвет, который нужно расположить на верху таблицы
  1. В разделе «Фильтр по цвету ячейки» выбрать оттенок, по которому нужно отфильтровать исходную таблицу, нажав на него ЛКМ.
  2. Проверить результат. После проделывания вышеуказанных манипуляций в таблице останутся только ячейки с указанным ранее цветом. Остальные элементы пропадут, а табличка сократится.

kak-otfiltrovat-dannye-v-excel-po-cvetu

Внешний вид таблички, преобразившейся после фильтрации данных в ней

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

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

Обратите внимание! В Microsoft Office Excel у функции фильтрации по цвету есть существенный недостаток. Пользователь может выбрать только один оттенок, по которому будет производиться фильтрация табличного массива. Указать несколько цветов сразу невозможно.

Как в Excel отсортировать данные по нескольким цветам

С сортировкой по цветам в Экселе обычно проблем не возникает. Она выполняется аналогичным образом:

  1. По аналогии с предыдущим пунктом добавить фильтр к табличному массиву.
  2. Щелкнуть по стрелочке, появившейся в названии столбца, и в выпадающем меню выбрать пункт «Сортировка по цвету».

kak-otfiltrovat-dannye-v-excel-po-cvetu

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

kak-otfiltrovat-dannye-v-excel-po-cvetu

Финальный результат сортировки ячеек по цвету в табличном массиве

Дополнительная информация! Отсортировать данные в табличке также можно с помощью функции «Настраиваемая сортировка», добавив несколько уровней по цветам.

Как отфильтровать сведения в таблице по цвету с помощью пользовательской функции

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

  1. Зайти в раздел «Разработчик», который находится сверху главного меню программы.
  2. В открывшейся области вкладки кликнуть по кнопке «Visual Basic».
  3. Откроется встроенный в программу редактор, в котором потребуется создать новый модуль и прописать код.

kak-otfiltrovat-dannye-v-excel-po-cvetu

Код программы с двумя функциями. Первая определяет цвет заливки элемента, а вторая отвечает за цвет внутри ячейки

Чтобы применить созданную функцию, необходимо:

  1. Вернуться на рабочий лист Excel и создать два новый столбца рядом с исходной таблицей. Их можно назвать «Цвет ячейки» и «Цвет текста» соответственно.

kak-otfiltrovat-dannye-v-excel-po-cvetu

Созданные вспомогательные столбцы
  1. В первом столбце написать формулу «= ColorFill()». В скобках указывается аргумент. Нужно кликнуть по ячейке с любым цветом в табличке.

kak-otfiltrovat-dannye-v-excel-po-cvetu

Формула в столбце «Цвет ячейки»
  1. Во втором столбике указать тот же самый аргумент, но только с функцией «=ColorFont()».

kak-otfiltrovat-dannye-v-excel-po-cvetu

Формула в столбце «Цвет текста»
  1. Растянуть получившиеся значения до конца таблицы, продлив формулу на весь диапазон. Полученные данные отвечают за цвет каждой ячейки в таблице.

kak-otfiltrovat-dannye-v-excel-po-cvetu

Получившееся данные после растягивания формулы
  1. Добавить фильтр в табличный массив по рассмотренной выше схеме. Данные будут отсортированы по цвету.

Важно! Сортировка в Excel с помощью пользовательской функции выполняется аналогичным образом.

Заключение

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

Оцените качество статьи. Нам важно ваше мнение:

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

Как фильтровать ячейки по цвету ячеек?

1 способ [диапазон ячеек]

  • В окне открытого листа выделите диапазон ячеек с данными, отформатированными по цвету ячеек.
  • Перейдите к вкладке «Данные» и в группе «Сортировка и фильтр» щелкните по кнопке «Фильтр».
  • Раскройте меню кнопки фильтрации в первой ячейке выделенного диапазона.
  • В меню «Автофильтр» наведите курсор на пункт «Фильтр по цвету».
  • В палитре цветов «Фильтр по цвету ячеек» щелкните по плашке нужного цвета (рис. 5.41).

Рис. 5.41. Меню кнопки фильтрации столбца с числами. Пункт «Фильтр по цвету»

Рис. 5.41. Меню кнопки фильтрации столбца с числами. Пункт «Фильтр по цвету»

2 способ [столбец таблицы]

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

[stextbox id=»warning»]Кнопки фильтрации доступны, если строка заголовков столбцов в таблице включена.[/stextbox]

Как фильтровать ячейки по цвету шрифта?

1 способ [диапазон ячеек]

  • В окне открытого листа выделите диапазон ячеек с данными, отформатированными по цвету шрифта.
  • Перейдите к вкладке «Данные» и в группе «Сортировка и фильтр» щелкните по кнопке «Фильтр».
  • Раскройте меню кнопки фильтрации в первой ячейке выделенного диапазона.
  • В меню «Автофильтр» наведите курсор на пункт «Фильтр по цвету».
  • В палитре цветов «Фильтр по цвету шрифта» щелкните по плашке нужного цвета.

2 способ [столбец таблицы]

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

[stextbox id=»warning»]Кнопки фильтрации доступны, если строка заголовков столбцов в таблице включена.[/stextbox]

Как фильтровать ячейки по набору значков?

1 способ [диапазон ячеек]

  • В окне открытого листа выделите диапазон ячеек с данными, отформатированными по набору значков.
  • Перейдите к вкладке «Данные» и в группе «Сортировка и фильтр» щелкните по кнопке «Фильтр».
  • Раскройте меню кнопки фильтрации в первой ячейке выделенного диапазона.
  • В меню «Автофильтр» наведите курсор на пункт «Фильтр по цвету».
  • В коллекции «Фильтр по значку ячейки» щелкните по нужному элементу (рис. 5.42).

Рис. 5.42. Меню кнопки фильтрации столбца с числами. Пункт «Фильтр по значку ячейки»

Рис. 5.42. Меню кнопки фильтрации столбца с числами. Пункт «Фильтр по значку ячейки»

2 способ [столбец таблицы]

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

[stextbox id=»warning»]Кнопки фильтрации доступны, если строка заголовков столбцов в таблице включена.[/stextbox]

Содержание

  • 1 Стандартный фильтр и сортировка по цвету в Excel
  • 2 Сортировка и фильтр по цвету с помощью функций
    • 2.1 Функция цвета заливки ячейки на VBA
    • 2.2 Функция цвета текста ячейки на VBA
  • 3 Замечания
  • 4 Сортировка по цвету ячеек
  • 5 Фильтр по цвету ячеек

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

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

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

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

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

  • Автофильтр и инструмент «Настраиваемая сортировка» (доступен начиная с версии Excel 2007);
  • Применение пользовательских функций.

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

как сделать фильтрацию по цвету в excel
Добавим фильтр к диапазону с таблицей (выбираем вкладку Главная -> Редактирование -> Сортировка и фильтр или воспользуемся сочетанием клавиш Ctrl + Shift + L), далее щелкаем по стрелке в заголовке столбца и в выпадающем списке можем выбрать любой вариант сортировки или фильтрации:

как сделать фильтрацию по цвету в excel
Из недостатков данного способа фильтрации можно отметить невозможность отфильтровать диапазон по нескольким цветам.

С сортированием подобных проблем не возникает, для этого необходимо последовательно отсортировать данные по заданным цветам.

Например, если мы хотим, чтобы сначала в таблице были показаны ячейки с красной заливкой, а затем с синей, то на первом шаге сделаем сортировку по синей заливке (т.е. сортируем данные в обратном порядке — если в конечном итоге нужен порядок ячеек красный -> синий, то сортируем в порядке синий -> красный):

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

как сделать фильтрацию по цвету в excel
Аналогичного результата также можно добиться отсортировав данные с помощью инструмента Настраиваемая сортировка (также выбираем вкладку Главная -> Редактирование -> Сортировка и фильтр), где можно настроить различные дополнительные параметры и уровни сортировки:

как сделать фильтрацию по цвету в excel

Сортировка и фильтр по цвету с помощью функций

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

Функция цвета заливки ячейки на VBA

Для создания пользовательских функций перейдем в редактор Visual Basic (комбинация клавиш Alt + F11), создадим новый модуль и добавим туда код следующей функции:

Public Function ColorFill(MyCell As Range)

    ColorFill = MyCell.Interior.ColorIndex

End Function

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

Вернемся в Excel и применим новую функцию ColorFill — либо непосредственно введем формулу в ячейку, либо вызовем ее с помощью мастера функций (выбрав из категории Определенные пользователем).
В дополнительном столбце прописываем код заливки ячейки:

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

как сделать фильтрацию по цвету в excel

Функция цвета текста ячейки на 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. Создавалась пользовательская функция и вводилась как формула под соответствующим столбцом, по которому нужно было выполнить сортировку. Теперь такие задачи можно выполнять значительно проще и эффективнее.

Сортировка по цвету ячеек

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

Чтобы расположить строки в последовательности: зеленый, желтый, красный, а потом без цвета – выполним следующий ряд действий:

  1. Щелкните на любую ячейку в области диапазона данных и выберите инструмент: «ДАННЫЕ»-«Сортировка и фильтр»-«Сортировка».
  2. Убедитесь, что отмечена галочкой опция «Мои данные содержат заголовки», а после чего из первого выпадающего списка выберите значение «Наименование». В секции «Сортировка» выберите опцию «Цвет ячейки». В секции «Порядок» раскройте выпадающее меню «Нет цвета» и нажмите на кнопку зеленого квадратика.
  3. Нажмите на кнопку «Копировать уровень» и в этот раз укажите желтый цвет в секции «Порядок».
  4. Аналогичным способом устанавливаем новое условие для сортировки относительно красного цвета заливки ячеек. И нажмите на кнопку ОК.

Ожидаемый результат изображен ниже на рисунке:

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

Фильтр по цвету ячеек

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

  1. Перейдите на любую ячейку диапазона и воспользуйтесь инструментом: «ДАННЫЕ»-«Сортировка и фильтр»-«Фильтр».
  2. Раскройте одно из выпадающих меню, которые появились в заголовках столбцов таблицы и наведите курсор мышки на опцию «Фильтр по цвету».
  3. Из всплывающего подменю выберите зеленый цвет.

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

Обратите внимание! В режиме автофильтра выпадающие меню так же содержит опцию «Сортировка по цвету»:

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

Из этой краткой инструкции Вы узнаете, как быстро сортировать по цвету заливки и шрифта ячейки на листе в Excel 2010 и 2013.

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

  • Сортировка по цвету заливки ячейки
  • Сортировка по цвету шрифта
  • Сортировка по значку
  • Фильтрация ячеек в Excel по цвету заливки

Сортировка в Excel по цвету заливки ячейки

Сортировка ячеек в Excel по цвету заливки – это одна из простейших операций, наравне с подсчётом количества ячеек, суммированием и даже фильтрацией. Не потребуются ни код VBA, ни формулы. Мы просто воспользуемся инструментом «Настраиваемая сортировка», который присутствует во всех современных версиях Excel 2013, 2010 и 2007.

  1. Выделите свою таблицу или диапазон ячеек.
  2. На вкладке Главная (Home) в разделе Редактирование (Editing) нажмите кнопку Сортировка и фильтр (Sort & Filter) и в появившемся меню выберите Настраиваемая сортировка (Custom Sort).
  3. В диалоговом окне Сортировка (Sort) настройте параметры слева направо:
    • Укажите Столбец (Column), по которому нужно выполнить сортировку (в нашем примере это столбец Delivery);
    • В поле Сортировка (Sort On) выберите Цвет ячейки (Cell Color);
    • Установите цвет ячеек, которые должны быть вверху;
    • В крайнем правом выпадающем списке выберите Сверху (On top).

    как сделать фильтрацию по цвету в excel

  4. Чтобы добавить ещё один уровень сортировки с такими же настройками, нажмите кнопку Копировать уровень (Copy Level). Затем в столбце Порядок (Order) выберите второй по порядку цвет. Таким же образом создайте столько уровней сортировки, сколько цветов надо отсортировать в таблице.как сделать фильтрацию по цвету в excel
  5. Нажмите ОК и проверьте в правильном ли порядке расположились строки с данными.

В нашей таблице вверх переместились строки со значением 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.

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

  1. Создайте вспомогательный столбец в конце таблицы или рядом со столбцом, в котором будете настраивать фильтр. Мы назовём его Filter by color.
  2. Во вторую ячейку только что добавленного столбца введите формулу:

    =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
  1. Скопируйте эту формулу во все ячейки столбца Filter by color.
  2. Примените автофильтр Excel и затем выберите нужные цвета по их кодам в выпадающем меню автофильтра.

В результате получится вот такая таблица, где показаны строки только с двумя выбранными цветами заливки:

На этом, пожалуй, всё на сегодня, благодарю за внимание!

Урок подготовлен для Вас командой сайта office-guru.ru
Источник: /> Перевел: Антон Андронов

Правила перепечаткиЕще больше уроков по Microsoft Excel

Оцените качество статьи. Нам важно ваше мнение:

Сортировка диапазона по цвету

Способ 1. Если у вас Excel 2007 или новее…

Тут все просто. Начиная с 2007-й версии в Excel добавили сортировку и фильтрацию по цвету заливки и по цвету шрифта как штатную функцию. Проще всего до них добраться через стандартный автофильтр:

color-sort1.png

Из минусов только невозможность фильтровать сразу по нескольким цветам.

Способ 2. Если у вас Excel 2003 или старше…

Версии Microsoft Excel до 2007 года в своем исходном состоянии не умели сортировать ячейки по формату, что, безусловно, является серьезным недостатком, если Вы используете цветовые кодировки в своих таблицах (а это бывает удобно). Поэтому давайте исправим досадное упущение — напишем на VBA простую пользовательскую функцию ColorIndex, которая будет выводить числовой код цвета заливки любой заданной ячейки. По этому коду мы и будем далее сортировать. 

Для этого откройте редактор Visual Basic через меню Сервис — Макрос — Редактор Visual Basic (Tools — Macro — Visual Basic Editor), вставьте новый пустой модуль (меню Insert — Module) и скопируйте туда текст простой функции:

Public Function ColorIndex(Cell As Range)    
    ColorIndex = Cell.Interior.ColorIndex
End Function

Теперь можно закрыть редактор Visual Basic, вернуться в Excel и, выделив любую пустую ячейку, вызвать созданную функцию ColorIndex через меню Вставка — Функция — категория Определенные пользователем (Insert — Function — User defined). В качестве аргумента укажите ячейку, цвет заливки которой хотите получить в виде цифрового кода.

Применительно к спискам, такая функция позволит легко сортировать ячейки по цвету заливки:

color-sort2.png

Если вам нужно вытаскивать не код цвета заливки, а код цвета шрифта, то функция слегка изменится:

Public Function ColorIndex(Cell As Range)    
    ColorIndex = Cell.Font.ColorIndex
End Function

P.S.

Наша функция ColorIndex, к сожалению, имеет пару недостатков:

  • С ее помощью нельзя получить цвет, который ячейка имеет при использовании условного форматирования
  • Она не пересчитывается автоматически при изменении цвета одной из ячеек, поскольку Excel не считает изменение цвета редактированием содержимого ячейки и не запускает автоматического пересчета листа. Это нужно сделать самому, нажав Ctrl+Alt+F9, либо дописав к нашей функции в каждой ячейке вот такую добавку:

    =ColorIndex(A2)+СЕГОДНЯ()*0

    чтобы содержимое ячейка пересчитывалась автоматически при каждом пересчете листа.

Ссылки по теме

  • Сортировка по цвету одной кнопкой (надстройка PLEX)
  • Суммирование ячеек с определенным цветом заливки или цветом шрифта (надстройка PLEX)
  • Что такое макрос, куда вставлять код макроса на VBA, как их использовать

Понравилась статья? Поделить с друзьями:
  • Excel фильтр по условию в другой ячейке
  • Excel фильтр по тексту в ячейке
  • Excel фильтр по столбцам с объединенными ячейками
  • Excel фильтр по столбцам несколько значений
  • Excel фильтр по списку на другом листе