|
7 / 7 / 0
Регистрация: 14.03.2013
Сообщений: 231
|
||||||
Как отфильтровать уже отфильтрованные значения таблице Excel15.04.2013, 14:41. Показов 12114. Ответов 42
Метки нет (Все метки)
Привет.
С помошью команды:
А теперь как мне из этого отфильтрованного объема данных отфильтровать дополнительно но уже по другому полю (например №2)?
0
|
||||||
| 15.04.2013, 14:41 | |
|
Ответы с готовыми решениями:
42
Как отфильтровать подстановочные значения в таблице по значению предыдущего столбца Как подсчитать отфильтрованные записи в таблице?
|
|
5472 / 1150 / 50
Регистрация: 15.09.2012
Сообщений: 3,578
|
||
| 22.04.2013, 10:08 | ||
|
Когда нет нужных VBA-Excel-средств, то нужно идти обходным путём.
0
|
||
|
7 / 7 / 0
Регистрация: 14.03.2013
Сообщений: 231
|
||||||
| 22.04.2013, 10:43 [ТС] | ||||||
|
Да, но я не вижу другог способа как по варианту предложенному Казанског используя метод:
Все бы ничего но тут есть нюанс, который пояснить лучше на примере: Пример: Допустим после применения фильтра по колонке №1, в колонке №2 осталось 5 зачений (0,-1,2,4,2). И допустим я хочу отфильтровать колонку №2 по значениям > 0. То значит я должен способом Казанского считать из колоннке все данные больше 0 а это - (2,4,2). И по этим данным отфильтровать эту колонку №2. Но это неверно, т.к. фильровать нужно по уникальным значениям а не по повторяющимся. А уникальных знчений всего 2 - (2,4). Значит дополнительно нужно городить методы удаляющие в массиве повторяющие значения и оставляющие только уникальные (я даже незнаю как безгеморно это сделать) А если к примеру просто заглянуть в Excel в фильтры колонки №2 и просто увидель отсортированный список уникальных (неповторяющихся) значений для фильтрации. Красота! Знать бы только как получить к ним доступ...
0
|
||||||
|
5472 / 1150 / 50
Регистрация: 15.09.2012
Сообщений: 3,578
|
|||
| 22.04.2013, 10:54 | |||
|
0
|
|||
|
15155 / 6428 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
|
|
| 22.04.2013, 14:21 | |
|
0
|
|
|
5472 / 1150 / 50
Регистрация: 15.09.2012
Сообщений: 3,578
|
|
| 22.04.2013, 14:24 | |
|
Казанский, там (Получение массива критериев из автофильтра excel) то же, что и в этой теме или там что-то другое есть?
0
|
|
|
7 / 7 / 0
Регистрация: 14.03.2013
Сообщений: 231
|
|
| 23.04.2013, 09:23 [ТС] | |
|
Вообщем Скрипт, это все тот же способ использования .AutoFilter.Filters(N), где N - номер колонки автофильтра.
И который работает если к колонка N была отфильтрована..
0
|
|
|
5472 / 1150 / 50
Регистрация: 15.09.2012
Сообщений: 3,578
|
|
| 23.04.2013, 09:38 | |
|
oleggy, значит вам нужно свой код писать, т.к. нет готового решения для вашей задачи.
0
|
|
|
7 / 7 / 0
Регистрация: 14.03.2013
Сообщений: 231
|
|
| 23.04.2013, 10:20 [ТС] | |
|
Казанский, Скрипт
Случаем не в курсе каким способом можно отсортировать Rage объект? А так же как можно удалить первый элемент из объекта Rage (удаление заголовка фильтра) ? Set r = .AutoFilter.Range.Сolumns(2).specialcell s(xlcelltypevisible) Не могу понять из мануала каким образом работает метод: r.Sort Сортировка мне нужна что бы можно было из отсортированного списка легко удалить повторяющиеся значения и в итоге полученный список и будет списком потенциальных фильтров в колонке №2 в автофильтре.
0
|
|
|
5472 / 1150 / 50
Регистрация: 15.09.2012
Сообщений: 3,578
|
|
| 23.04.2013, 10:26 | |
|
oleggy, здесь Получение массива критериев из автофильтра excel в сообщении #2 как раз и используется обходной путь решения вашей задачи.
0
|
|
|
7 / 7 / 0
Регистрация: 14.03.2013
Сообщений: 231
|
||||||
| 23.04.2013, 11:59 [ТС] | ||||||
|
Скрипт, верно ли я понял что имелось ввиду использование объекта Scripting.Dictionary для обработки и сортировки данных?
Т.к. более ничего полезного для моего случая я в том примере не нашел.. (поправьте меня если ошибаюсь) В том случае автор для осуществления сбора фильтров осуществляет перебор всех (!) данных в автофильтре что совсем не оптимально. По мне лучше вариант коллекции видимых ячеек:
0
|
||||||
|
5472 / 1150 / 50
Регистрация: 15.09.2012
Сообщений: 3,578
|
||
| 23.04.2013, 12:30 | ||
|
Вы можете воспользоваться и "SpecialCells(xlCellTypeVisible)" и "Dictionary" одновременно. Просматривайте только видимые ячейки и добавляйте их в "Dictionary". С помощью "Dictionary" можно взять только уникальные (неповторяющиеся данные).
0
|
||
|
7 / 7 / 0
Регистрация: 14.03.2013
Сообщений: 231
|
||||||||||||||||
| 23.04.2013, 13:52 [ТС] | ||||||||||||||||
|
Скрипт, можешь подсказать из за чего может ругатся VBA: User-defined type not defined
на выражение:
VBA не понимает "Scripting.Dictionary"
0
|
||||||||||||||||
|
5472 / 1150 / 50
Регистрация: 15.09.2012
Сообщений: 3,578
|
||||||
| 23.04.2013, 13:55 | ||||||
|
oleggy, в данном коде должна быть подключена библиотека:
Tools - References... - Microsoft Scripting Runtime. Чтобы библиотеку не подключать, нужно так в коде написать (могут быть опечатки - код не тестировал):
0
|
||||||
|
7 / 7 / 0
Регистрация: 14.03.2013
Сообщений: 231
|
|||||||||||
| 23.04.2013, 14:06 [ТС] | |||||||||||
|
Скрипт принципиально ли в коде VBA обязательно явно задавать:
0
|
|||||||||||
|
5472 / 1150 / 50
Регистрация: 15.09.2012
Сообщений: 3,578
|
|
| 23.04.2013, 14:11 | |
|
oleggy, в данном случае нет разницы: что задать тип данных "Object", что не задать: код не станет легче писать. Может быть это защитит от какой-нибудь нелепой опечатки, если вдруг вместо работы с объектом будете работать с другим типом данных.
0
|
|
|
7 / 7 / 0
Регистрация: 14.03.2013
Сообщений: 231
|
|||||||||||
| 24.04.2013, 07:23 [ТС] | |||||||||||
|
В итоге получил код, котрый можно использовать для получения фильтров из той колонки автофильтра, которую мы НЕ ФИЛЬТРОВАЛИ.
Если же нам нужно получить список фильтров из колонки которая была отфильтрована, то код вы можете увидеть в том сообщении: Получение массива критериев из автофильтра excel
К сожалению так и не могу понять почему следующая команда:
Получается тот же самый результат о котором я писал в посте выше: Как отфильтровать уже отфильтрованные значения таблице Excel В том примере я фильтровал по неуникальным значениям. И я думал что это из-за того что значения неуникальны. Но по видимому не в этом причина.
0
|
|||||||||||
|
7 / 7 / 0
Регистрация: 14.03.2013
Сообщений: 231
|
||||||
| 26.04.2013, 08:27 [ТС] | ||||||
|
Казанский, Скрипт
Случаем не в курсе из-за чего может возникнуть ошибка? Код:
Но он не работает если на листе есть автофильтр но в нем ничего не отфильтровано.
0
|
||||||
|
5472 / 1150 / 50
Регистрация: 15.09.2012
Сообщений: 3,578
|
||||||
| 26.04.2013, 08:41 | ||||||
|
oleggy, вот этот код у вас работает на листе, где есть автофильтр, но который не применён?
Код
1
|
||||||
|
7 / 7 / 0
Регистрация: 14.03.2013
Сообщений: 231
|
||||||
| 26.04.2013, 13:02 [ТС] | ||||||
|
Спасибо, существует код котрый перебирает скрытые ячейки?
0
|
||||||
|
6998 / 2896 / 555
Регистрация: 19.10.2012
Сообщений: 8,804
|
|
| 26.04.2013, 13:28 | |
|
Я помню делал так - сперва
set r=видимые затем отображал всё, скрывал r - получаем видимыми ранее скрытые.
0
|
|
| 26.04.2013, 13:28 | |
|
Как исключить из Comboboxa значения, которые уже были введены в ячейки Excel? Как отфильтровать дубликаты записей в таблице?
Как отфильтровать ячейки с формулами в 2007 Excel? Добавить значение в таблицу, только в том случае, если в таблице уже нету такого значения. Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Запустил конкурс "тем и промптов для текстовых квестов созданных почти чисто ИИ"
Adler 06.10.2026
Всем привет!
За последние три-четыре дня я создал более 16 текстовых квестовых игр используя преимущественно по одному запросу к ИИ на игру. Мне так понравилось смотреть все ветки/ сцены во всех. . .
|
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык.
Возвращает он вот это:
https:/ / i. **********/ vqBWLe2. png
Нужную строчку в 3й колонке просто выдумал. .
Это. . .
|
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor.
Это. . .
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами:
- ВидТО (СправочникСсылка. ВидыТО);
- ВидГСМ. . .
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|