Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Фильтрация колонки по цвету текста и заливки - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
Страница 1 из 11
Модератор форума: _Boroda_, Pelena, Manyasha, SLAVICK 
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Фильтрация колонки по цвету текста и заливки (Формулы/Formulas)
Фильтрация колонки по цвету текста и заливки
evokharkov Дата: Пятница, 27.10.2017, 13:19 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 18
Репутация: 0 ±
Замечаний: 20% ±

Excel 2010
Добрый день всем.
Есть табл. из двух колонок 1ая - наименование (А), 2ая - кол-во (В), необходимо по колонке кол-во (В) отфильтровать разными вариантами.

Вариант1 - чтобы остались только ячейки, которые выделены цветом.
Вариант2 - чтобы остались ячейки в которых текст выделен цветом.
Вариант3 - чтобы остались ячейки в которых нет ничего, пусто.

Только главное условие, без прикрепления Фильтра! Можно расширенным фильтром, им у меня получается сделать чтоб оставались только ячейки с цифровым значение и без значений (пусто), а по цвету не получается.
Как можно это сделать?
К сообщению приложен файл: test.xlsx(10Kb)


Сообщение отредактировал evokharkov - Пятница, 27.10.2017, 13:19
 
Ответить
СообщениеДобрый день всем.
Есть табл. из двух колонок 1ая - наименование (А), 2ая - кол-во (В), необходимо по колонке кол-во (В) отфильтровать разными вариантами.

Вариант1 - чтобы остались только ячейки, которые выделены цветом.
Вариант2 - чтобы остались ячейки в которых текст выделен цветом.
Вариант3 - чтобы остались ячейки в которых нет ничего, пусто.

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

Автор - evokharkov
Дата добавления - 27.10.2017 в 13:19
_Boroda_ Дата: Пятница, 27.10.2017, 13:30 | Сообщение № 2
Группа: Модераторы
Ранг: Местный житель
Сообщений: 11644
Репутация: 4825 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Только главное условие, без прикрепления Фильтра

Почему?


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
Сообщение
Только главное условие, без прикрепления Фильтра

Почему?

Автор - _Boroda_
Дата добавления - 27.10.2017 в 13:30
evokharkov Дата: Пятница, 27.10.2017, 13:39 | Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 18
Репутация: 0 ±
Замечаний: 20% ±

Excel 2010
Почему?


Чтоб на макросы записать и без фильтра, только по макросам работало.
Выбрал макрос, показало только текст выделенный цветом, выбрал другой макрос, показало только строки с залитыми ячейками и т.д.
 
Ответить
Сообщение
Почему?


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

Автор - evokharkov
Дата добавления - 27.10.2017 в 13:39
_Boroda_ Дата: Пятница, 27.10.2017, 13:44 | Сообщение № 4
Группа: Модераторы
Ранг: Местный житель
Сообщений: 11644
Репутация: 4825 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Чтоб на макросы записать и без фильтра

Почему?
Кто мешает "записать на макросы" с фильтром?


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
Сообщение
Чтоб на макросы записать и без фильтра

Почему?
Кто мешает "записать на макросы" с фильтром?

Автор - _Boroda_
Дата добавления - 27.10.2017 в 13:44
evokharkov Дата: Пятница, 27.10.2017, 14:12 | Сообщение № 5
Группа: Пользователи
Ранг: Новичок
Сообщений: 18
Репутация: 0 ±
Замечаний: 20% ±

Excel 2010
Кто мешает "записать на макросы" с фильтром?

А можно убрать потом фильтр и чтоб потом макросы работали по фильтру, но фильтра на листе не было?
Нюанс в том, чтоб на листе только макросы остались, а фильтра не было.

Прикрепляю файл, можно реализовать, чтоб эти макросы работали, но фильтра не было вообще на листе?
К сообщению приложен файл: test.xls(38Kb)


Сообщение отредактировал evokharkov - Пятница, 27.10.2017, 14:31
 
Ответить
Сообщение
Кто мешает "записать на макросы" с фильтром?

А можно убрать потом фильтр и чтоб потом макросы работали по фильтру, но фильтра на листе не было?
Нюанс в том, чтоб на листе только макросы остались, а фильтра не было.

Прикрепляю файл, можно реализовать, чтоб эти макросы работали, но фильтра не было вообще на листе?

Автор - evokharkov
Дата добавления - 27.10.2017 в 14:12
sboy Дата: Пятница, 27.10.2017, 15:37 | Сообщение № 6
Группа: Проверенные
Ранг: Старожил
Сообщений: 1103
Репутация: 276 ±
Замечаний: 0% ±

Excel 2010
Вот такой вариант, но с фильтром мне кажется, что лучше)
К сообщению приложен файл: test-3-.xlsm(19Kb)
 
Ответить
СообщениеВот такой вариант, но с фильтром мне кажется, что лучше)

Автор - sboy
Дата добавления - 27.10.2017 в 15:37
_Boroda_ Дата: Пятница, 27.10.2017, 16:02 | Сообщение № 7
Группа: Модераторы
Ранг: Местный житель
Сообщений: 11644
Репутация: 4825 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Конечно лучше. А если еще и невидимую кнопку (VisibleDropDown:=False) ему приделать, то вообще никто не узнает
К сообщению приложен файл: test-5-1.xls(41Kb)


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеКонечно лучше. А если еще и невидимую кнопку (VisibleDropDown:=False) ему приделать, то вообще никто не узнает

Автор - _Boroda_
Дата добавления - 27.10.2017 в 16:02
evokharkov Дата: Пятница, 27.10.2017, 16:22 | Сообщение № 8
Группа: Пользователи
Ранг: Новичок
Сообщений: 18
Репутация: 0 ±
Замечаний: 20% ±

Excel 2010
Вот такой вариант


Да, так. Скажи как ты узнаешь цифровое значение цвета и заносишь в формулу?
[vba]
Код
Sub cell_color()
Application.ScreenUpdating = False
show_rows
    For Each cl In Range("B2:B10").Cells
        If cl.Interior.Color = 16777215 Then cl.EntireRow.Hidden = True
    Next cl
Application.ScreenUpdating = True
End Sub
[/vba]

Если я правильно понял, то 16777215 это код цвета заливки?!

Второй вопрос.
Где тут указывается цвет текста?

[vba]
Код
Sub font_color()
Application.ScreenUpdating = False
show_rows
    For Each cl In Range("B2:B10").Cells
        If cl.Font.Color = 0 Then cl.EntireRow.Hidden = True
    Next cl
Application.ScreenUpdating = True
End Sub
[/vba]


Сообщение отредактировал evokharkov - Пятница, 27.10.2017, 16:28
 
Ответить
Сообщение
Вот такой вариант


Да, так. Скажи как ты узнаешь цифровое значение цвета и заносишь в формулу?
[vba]
Код
Sub cell_color()
Application.ScreenUpdating = False
show_rows
    For Each cl In Range("B2:B10").Cells
        If cl.Interior.Color = 16777215 Then cl.EntireRow.Hidden = True
    Next cl
Application.ScreenUpdating = True
End Sub
[/vba]

Если я правильно понял, то 16777215 это код цвета заливки?!

Второй вопрос.
Где тут указывается цвет текста?

[vba]
Код
Sub font_color()
Application.ScreenUpdating = False
show_rows
    For Each cl In Range("B2:B10").Cells
        If cl.Font.Color = 0 Then cl.EntireRow.Hidden = True
    Next cl
Application.ScreenUpdating = True
End Sub
[/vba]

Автор - evokharkov
Дата добавления - 27.10.2017 в 16:22
evokharkov Дата: Пятница, 27.10.2017, 16:37 | Сообщение № 9
Группа: Пользователи
Ранг: Новичок
Сообщений: 18
Репутация: 0 ±
Замечаний: 20% ±

Excel 2010
_Boroda_ У вас разнятся методы? В вашем случае где-то скрыта кнопка еще?


Сообщение отредактировал evokharkov - Пятница, 27.10.2017, 16:38
 
Ответить
Сообщение_Boroda_ У вас разнятся методы? В вашем случае где-то скрыта кнопка еще?

Автор - evokharkov
Дата добавления - 27.10.2017 в 16:37
_Boroda_ Дата: Пятница, 27.10.2017, 16:44 | Сообщение № 10
Группа: Модераторы
Ранг: Местный житель
Сообщений: 11644
Репутация: 4825 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
У вас разнятся методы?

Да
В вашем случае где-то скрыта кнопка еще?

Нет


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
Сообщение
У вас разнятся методы?

Да
В вашем случае где-то скрыта кнопка еще?

Нет

Автор - _Boroda_
Дата добавления - 27.10.2017 в 16:44
evokharkov Дата: Пятница, 27.10.2017, 17:02 | Сообщение № 11
Группа: Пользователи
Ранг: Новичок
Сообщений: 18
Репутация: 0 ±
Замечаний: 20% ±

Excel 2010
_Boroda_
Свои макросы заменил вашими (текст макроса контр+Ц и контрл+В на ваш), не хочет запускаться.
Что делаю не так?
К сообщению приложен файл: 5986800.xlsx(14Kb)
 
Ответить
Сообщение_Boroda_
Свои макросы заменил вашими (текст макроса контр+Ц и контрл+В на ваш), не хочет запускаться.
Что делаю не так?

Автор - evokharkov
Дата добавления - 27.10.2017 в 17:02
_Boroda_ Дата: Пятница, 27.10.2017, 19:13 | Сообщение № 12
Группа: Модераторы
Ранг: Местный житель
Сообщений: 11644
Репутация: 4825 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Прежде всего прикладываете файл с расширением, не поддерживающим макросы
Макросы к кнопкам Контрл с-Контрл v не привяжет, это вручную нужно делать. На нужную кнопку нужный макрос.


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеПрежде всего прикладываете файл с расширением, не поддерживающим макросы
Макросы к кнопкам Контрл с-Контрл v не привяжет, это вручную нужно делать. На нужную кнопку нужный макрос.

Автор - _Boroda_
Дата добавления - 27.10.2017 в 19:13
evokharkov Дата: Понедельник, 30.10.2017, 11:00 | Сообщение № 13
Группа: Пользователи
Ранг: Новичок
Сообщений: 18
Репутация: 0 ±
Замечаний: 20% ±

Excel 2010
_Boroda_

Извиняюсь за файл.
Но чтот у меня не получается, значит я пересохранил файл в xlsm, захожу в Разрабочик - Visual Basic - Insert - Module - записываю ваш первый макрос, сохраняю и так все 4 макроса.
После захожу в макросы Skr1-Skr4 и они пустые.
Что делаю не так?
 
Ответить
Сообщение
_Boroda_

Извиняюсь за файл.
Но чтот у меня не получается, значит я пересохранил файл в xlsm, захожу в Разрабочик - Visual Basic - Insert - Module - записываю ваш первый макрос, сохраняю и так все 4 макроса.
После захожу в макросы Skr1-Skr4 и они пустые.
Что делаю не так?

Автор - evokharkov
Дата добавления - 30.10.2017 в 11:00
sboy Дата: Понедельник, 30.10.2017, 11:04 | Сообщение № 14
Группа: Проверенные
Ранг: Старожил
Сообщений: 1103
Репутация: 276 ±
Замечаний: 0% ±

Excel 2010
Скажи как ты узнаешь цифровое значение цвета

[vba]
Код
Function GetCellColor(rC As Range)
GetCellColor = rC.Interior.Color
End Function
[/vba]
с цветом текста аналогично
 
Ответить
Сообщение
Скажи как ты узнаешь цифровое значение цвета

[vba]
Код
Function GetCellColor(rC As Range)
GetCellColor = rC.Interior.Color
End Function
[/vba]
с цветом текста аналогично

Автор - sboy
Дата добавления - 30.10.2017 в 11:04
evokharkov Дата: Понедельник, 30.10.2017, 11:40 | Сообщение № 15
Группа: Пользователи
Ранг: Новичок
Сообщений: 18
Репутация: 0 ±
Замечаний: 20% ±

Excel 2010

Спасибо вам, ваши макросы разобрал, понял, только с большой таблицей они по 5 сек думаю при включении.
 
Ответить
Сообщение
Спасибо вам, ваши макросы разобрал, понял, только с большой таблицей они по 5 сек думаю при включении.

Автор - evokharkov
Дата добавления - 30.10.2017 в 11:40
sboy Дата: Понедельник, 30.10.2017, 11:52 | Сообщение № 16
Группа: Проверенные
Ранг: Старожил
Сообщений: 1103
Репутация: 276 ±
Замечаний: 0% ±

Excel 2010
с большой таблицей

Конечно будет думать, ведь каждую ячейку проверяем. Поэтому и писали Вам
с фильтром лучше

Конечно лучше
 
Ответить
Сообщение
с большой таблицей

Конечно будет думать, ведь каждую ячейку проверяем. Поэтому и писали Вам
с фильтром лучше

Конечно лучше

Автор - sboy
Дата добавления - 30.10.2017 в 11:52
_Boroda_ Дата: Понедельник, 30.10.2017, 12:25 | Сообщение № 17
Группа: Модераторы
Ранг: Местный житель
Сообщений: 11644
Репутация: 4825 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Полностью поддерживаю. И именно поэтому я все-таки с фильтром и сделал.
evokharkov, отвечаю на Ваш вопрос в личке -
Совершенно верно, привязал к фильтру, а стрелочку у него спрятал. Параметр VisibleDropDown отвечает за видимость стрелочки автофильтра в каждом конкретном столбце. Я как раз об этом писал -
невидимую кнопку (VisibleDropDown:=False)


Чтобы не мучиться с переносом макросов, сделайте проще - перенесите весь мой лист к себе в книгу и вставьте на этот лист свои данные. Там уже все подвязано и должно работать


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеПолностью поддерживаю. И именно поэтому я все-таки с фильтром и сделал.
evokharkov, отвечаю на Ваш вопрос в личке -
Совершенно верно, привязал к фильтру, а стрелочку у него спрятал. Параметр VisibleDropDown отвечает за видимость стрелочки автофильтра в каждом конкретном столбце. Я как раз об этом писал -
невидимую кнопку (VisibleDropDown:=False)


Чтобы не мучиться с переносом макросов, сделайте проще - перенесите весь мой лист к себе в книгу и вставьте на этот лист свои данные. Там уже все подвязано и должно работать

Автор - _Boroda_
Дата добавления - 30.10.2017 в 12:25
evokharkov Дата: Понедельник, 30.10.2017, 12:39 | Сообщение № 18
Группа: Пользователи
Ранг: Новичок
Сообщений: 18
Репутация: 0 ±
Замечаний: 20% ±

Excel 2010
Чтобы не мучиться

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

[vba]
Код
Sub Skr1()
    If Me.AutoFilterMode Then
        Columns("B:B").AutoFilter
    End If
    Columns("B:B").AutoFilter Field:=1, Criteria1:=RGB(255, 0, 0), Operator:=xlFilterFontColor, VisibleDropDown:=False
End Sub
[/vba]

как я понимаю надо в файле в нужном месте поставить автофильтр и создать макрос с вашим текстом, так?
 
Ответить
Сообщение
Чтобы не мучиться

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

[vba]
Код
Sub Skr1()
    If Me.AutoFilterMode Then
        Columns("B:B").AutoFilter
    End If
    Columns("B:B").AutoFilter Field:=1, Criteria1:=RGB(255, 0, 0), Operator:=xlFilterFontColor, VisibleDropDown:=False
End Sub
[/vba]

как я понимаю надо в файле в нужном месте поставить автофильтр и создать макрос с вашим текстом, так?

Автор - evokharkov
Дата добавления - 30.10.2017 в 12:39
_Boroda_ Дата: Понедельник, 30.10.2017, 13:11 | Сообщение № 19
Группа: Модераторы
Ранг: Местный житель
Сообщений: 11644
Репутация: 4825 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Автофильтр создавать не нужно, он сам создается
Нужно скопировать сразу все 4 макроса из моего поста выше, ткнуться правой мышой в ярлык листа (пусть этот лист назавыется Дано), выбрать Исходный код (или как-то в этом роде - зависит от версии Excel), в появившееся окошко вставить скопированное, закрыть окно VBA, создать на листе 4 кнопки (если их уже там нет), ткнуться правой мышой в первую кнопку - выбрать пункт "Присвоить макрос", в появившемся списке выбрать "Дано.Skr1". Повторить для остальных кнопок. Обозвать кнопки так, как они названы в моем файле (или в Вашем)


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеАвтофильтр создавать не нужно, он сам создается
Нужно скопировать сразу все 4 макроса из моего поста выше, ткнуться правой мышой в ярлык листа (пусть этот лист назавыется Дано), выбрать Исходный код (или как-то в этом роде - зависит от версии Excel), в появившееся окошко вставить скопированное, закрыть окно VBA, создать на листе 4 кнопки (если их уже там нет), ткнуться правой мышой в первую кнопку - выбрать пункт "Присвоить макрос", в появившемся списке выбрать "Дано.Skr1". Повторить для остальных кнопок. Обозвать кнопки так, как они названы в моем файле (или в Вашем)

Автор - _Boroda_
Дата добавления - 30.10.2017 в 13:11
evokharkov Дата: Понедельник, 30.10.2017, 15:56 | Сообщение № 20
Группа: Пользователи
Ранг: Новичок
Сообщений: 18
Репутация: 0 ±
Замечаний: 20% ±

Excel 2010
Всем спасибо, помогли, из ваших двух сделал третий вариант, просто к своим макросам добавил код скрытия фильтра и вуаля, подсмотрел у _Boroda_ :)
 
Ответить
СообщениеВсем спасибо, помогли, из ваших двух сделал третий вариант, просто к своим макросам добавил код скрытия фильтра и вуаля, подсмотрел у _Boroda_ :)

Автор - evokharkov
Дата добавления - 30.10.2017 в 15:56
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Фильтрация колонки по цвету текста и заливки (Формулы/Formulas)
Страница 1 из 11
Поиск:

Яндекс цитирования
© 2010-2017 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!