Как отфильтровать столбец таблицы по цвету. Вернее как отобразить только залитые цветом ячейки (заливка произведена большим количеством цветов - около 10-15)? Незалитых - около половины. Есть ли такая возможность?
Всем доброго дня! Вопрос следующего содержания:
Как отфильтровать столбец таблицы по цвету. Вернее как отобразить только залитые цветом ячейки (заливка произведена большим количеством цветов - около 10-15)? Незалитых - около половины. Есть ли такая возможность?tsap
Сообщение отредактировал tsap - Суббота, 12.05.2012, 18:50
Необходимо вызвать окно настраиваемой сортировки(работает с 2007 версии) и задать способ сортировки - цвет ячейки
В том-то и дело - можно отфильтровать только по одному цвету, либо же не залитые цветом ячейки. А как отфильтровать все незалитые ячейки и вывести все залитые цветом (разными цветами)
Quote (Гость)
Необходимо вызвать окно настраиваемой сортировки(работает с 2007 версии) и задать способ сортировки - цвет ячейки
В том-то и дело - можно отфильтровать только по одному цвету, либо же не залитые цветом ячейки. А как отфильтровать все незалитые ячейки и вывести все залитые цветом (разными цветами)tsap
Вы хочете с фильтром? Их есть у меня! (Правда без фильтра проще, но не интересно) [vba]
Code
Sub qqq() Dim arr, ar, ar1, cl, i&, j& With ActiveSheet.Range("$A$1:$A$17") arr = .Value ReDim ar(UBound(arr) - 1): ReDim ar1(UBound(arr) - 1) .AutoFilter Field:=1, Operator:=xlFilterNoFill For Each cl In .Cells.SpecialCells(xlCellTypeVisible) ar(i) = cl.Value: i = i + 1 Next For i = 1 To UBound(arr) For j = 0 To UBound(ar) - 1 If arr(i, 1) = ar(j) Then ar1(i - 1) = Empty: Exit For ar1(i - 1) = CStr(arr(i, 1)) If ar1(i - 1) = Empty Then Exit For Next: Next .AutoFilter .AutoFilter Field:=1, Criteria1:=ar1, Operator:=xlFilterValues End With End Sub
[/vba]
PS Excel >2003
Вы хочете с фильтром? Их есть у меня! (Правда без фильтра проще, но не интересно) [vba]
Code
Sub qqq() Dim arr, ar, ar1, cl, i&, j& With ActiveSheet.Range("$A$1:$A$17") arr = .Value ReDim ar(UBound(arr) - 1): ReDim ar1(UBound(arr) - 1) .AutoFilter Field:=1, Operator:=xlFilterNoFill For Each cl In .Cells.SpecialCells(xlCellTypeVisible) ar(i) = cl.Value: i = i + 1 Next For i = 1 To UBound(arr) For j = 0 To UBound(ar) - 1 If arr(i, 1) = ar(j) Then ar1(i - 1) = Empty: Exit For ar1(i - 1) = CStr(arr(i, 1)) If ar1(i - 1) = Empty Then Exit For Next: Next .AutoFilter .AutoFilter Field:=1, Criteria1:=ar1, Operator:=xlFilterValues End With End Sub
Уважаемый RAN, Тема этой страницы вероятно несложна для Вас, но актуальна для меня, не знаю как решить, непрофессионал в этом деле, но Excel пользуюсь регулярно. В приведенном коде как я понял дублируется функция фильтра по цвету, но фильтра только по ОДНОМУ выбранному цвету. Как сделать так, чтобы фильтровался не один цвет, а все закрашенные строки по выбранному столбцу. Например, в таблице строки разной длины и цвета раскраски. При выборе столбца хочу увидеть все строки имеющие цвет при пересечении с этим столбцом. Если у меня два цвета - розовый и голубой. Как сделать так, чтобы отфильтровались строки, закрашенные только в эти два цвета (в оба одновременно!), а незакрашенных не было. В приложенном примере я должен видеть при фильтрации столбца В: только полную строку Анна, С: две строки - Анна и Сергей, и т.д. В идеале я хотел бы ползая по столбцам видеть в отдельном месте (VLOOK UP?) эти имена (желательно уже без цвета, т.е. только текст этих строк). Надеюсь на Вашу помощь! [moder]Читаем Правила форума. Создаем свою тему
Уважаемый RAN, Тема этой страницы вероятно несложна для Вас, но актуальна для меня, не знаю как решить, непрофессионал в этом деле, но Excel пользуюсь регулярно. В приведенном коде как я понял дублируется функция фильтра по цвету, но фильтра только по ОДНОМУ выбранному цвету. Как сделать так, чтобы фильтровался не один цвет, а все закрашенные строки по выбранному столбцу. Например, в таблице строки разной длины и цвета раскраски. При выборе столбца хочу увидеть все строки имеющие цвет при пересечении с этим столбцом. Если у меня два цвета - розовый и голубой. Как сделать так, чтобы отфильтровались строки, закрашенные только в эти два цвета (в оба одновременно!), а незакрашенных не было. В приложенном примере я должен видеть при фильтрации столбца В: только полную строку Анна, С: две строки - Анна и Сергей, и т.д. В идеале я хотел бы ползая по столбцам видеть в отдельном месте (VLOOK UP?) эти имена (желательно уже без цвета, т.е. только текст этих строк). Надеюсь на Вашу помощь! [moder]Читаем Правила форума. Создаем свою темуmorozovvv