Из этой краткой инструкции Вы узнаете, как быстро сортировать по цвету заливки и шрифта ячейки на листе в Excel 2010 и 2013.
В одной из недавних статей мы рассматривали различные способы, как в 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
Источник: https://www.ablebits.com/office-addins-blog/2013/12/18/sort-by-color-excel/
Перевел: Антон Андронов
Правила перепечатки
Еще больше уроков по Microsoft Excel