2015-03-10 4 views

ответ

7

- К сожалению, сортировать/фильтровать строки/ячейки по их форматированию невозможно, используя встроенную функцию. Тем не менее, это является возможно с помощью настраиваемого Google Apps Script как один Shannon Chan выкладывает here:

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

Вставьте следующий код в файл сценария и сохраните его:

function getHex(input) { 
    var ss = SpreadsheetApp.getActiveSpreadsheet(); 
    var cell = ss.getRange(input); 
    var result = cell.getBackground(); 
    return result 
} 

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

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

Теперь перейдите в ячейку 'B1' и введите:

= getHex (ячейка ("адрес", A1))

Это должно дать вам значение "# FFFF00", который является шестнадцатеричным кодом для цвет желтый. (FYI: Я использовал мобильный («адрес», A1), так что мы можем получить строковую форму ссылки на ячейку «A1», что функция gethex() принимает в качестве аргумента.)

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

Отсюда вы можете перейти к фильтрации ячеек цветом, обозначенным шестнадцатеричным кодом !

Примечание: Функция getHex() не динамически обновляется при изменении цвета ячейки . Чтобы обновить значения, вы можете удалить ячейки с формулой, эквивалентной '= getHex (ячейка («адрес», A1) », а затем отменить действие с помощью« cmd + z »или« ctrl + z ». следует обновить формулы и результаты шестнадцатеричного анализа.

Смежные вопросы