Помогите создать фильтр в listbox по параметрам (цена,код,наименование,артикул).
Фильтр в listbox
19.02.2013 16:30:58
|
|
|
|
19.02.2013 16:49:17
Учимся сами и помогаем другим...
|
|
|
|
19.02.2013 16:55:10
заходил уже,у меня должно быть все проще,как в примере.
|
|
|
|
19.02.2013 17:00:41
а вы попробуйте сперва на этой основе написать что-то под себя, а что не будет получаться спрашивайте здесь.
Учимся сами и помогаем другим...
|
|
|
|
19.02.2013 17:08:49
Открыл,но это совсем не то,что нужно.
Изменено: |
|
|
|
19.02.2013 19:09:37
Фильтровать нужно по полному совпадению или по частичному? Например, наименование.
|
|
|
|
19.02.2013 19:14:28
по частичному
|
|
|
|
19.02.2013 19:31:58
для наименования,артикула и цены
1.это не столь важно их вообще можно переименовать 2.этот листбокс был взят из другой формы где 6 столбцов,шестой вообще ненужен у меня как то пулучалось делать что то подобное,но тогда у меня при нажатии на отфильтрованные значения терялась функция перехода на строку,если можно пусть она останется.
Изменено: |
|
|
|
19.02.2013 19:40:36
у меня мало опыта работы с вба,по этом не поленился,просто не сталкивался.код 4,цена 5 стобец.
Изменено: |
|
|
|
19.02.2013 19:57:25
|
|||
|
|
19.02.2013 20:04:11
например если у двух товаров совпадает цена то в листбокс их останется 2,если совпадает артикул тоже самое и т.д.
|
|
|
|
19.02.2013 20:12:20
Извеняюсь, не так понял. Да действительно, Вы правы, было бы правельней оставить точное совпадение по цене.
|
|
|
|
19.02.2013 20:40:14
См. файл. При начальной загрузке формы в ЛистБокс будет выведено ВСЁ. Затем уже фильтрация по радиокнопкам и поисковому запросу.
|
|
|
|
19.02.2013 20:59:14
Забыл про выделение нужной строки (ячейки) по клику в ЛистБоксе. Исправил.
|
|
|
|
21.02.2013 12:15:27
юрий спасибо!все очень круто работает.
|
|
|
|
09.04.2013 15:49:10
Юрий,
я использовал ваш код из этого файла для своей формы. Спасибо за отличный пример! Вы не могли бы ответить на вопрос, я код разобрал, но только не понял двух моментов ![]() 1. что по смыслу значит <Add Item ""> когда вы добавляете и раскидываете значения по листам Listbox в разные колонки? 2. и за счет чего происходит поэтапная фильтрация, если при каждом нажатии CommandButton лист очищается командой Me.listbox.clear? Спасибо! |
|
|
|
09.04.2013 19:42:30
1. Добавление новой строки в ListBox.
2. .Clear - сначала полностью очищаем содержимое ListBox, а затем заново заполняем его по условию. Если предварительно не очистить - останутся старые значения и снизу допишутся новые. |
|
|
|
09.04.2013 21:06:03
Юрий, а за счет чего у вас в примере данные могут фильтроваться поэтапно, т.е. скажем, сначала по артикулу, потом из того, что отфильтровано по продукту, а затем, скажем по номеру.
Т.е. получается многоуровневый фильтр. Там ведь как я понял при выполнении каждого условия (нажатии commond button) listbox отчищается, или я чтото не так понял? ![]() |
|
|
|
09.04.2013 21:16:42
Не понял вопрос - про какой многоуровневый фильтр Вы говорите?
Повторюсь: каждый раз ListBox очищается и заполняется заново. |
|
|
|
09.04.2013 21:51:53
я когда фильтрую по вашему примеру, который вы keny сделали, там получается что, например, если я отфильтровал по артикулу 9, то он соответственно выдает список с этим артикулом,
но потом, если я выберу и применю критерий, скажем, Наименовение 28 в уже отфильтрованном списке он уберет все что не "28" при этом не обновляя сам листбокс. Получается, что в вашем примере, можно фильтровать уже отфильтрованные данные и при каждом новом критерии, листбокс не отчищается. Такая вот штука. Как вы это сделали, я и как раз и не могу понять ![]() |
|
|
|
09.04.2013 22:02:03
Me.ListBox2.Clear она и занимается очисткой содержимого ListBox. И выполняется при КАЖДОМ нажатии на кнопку. |
|||
|
|
09.04.2013 22:16:31
походу мне сегодня хорошо жбан сорвало за компом
![]() ![]() А вы не подскажете, как можно реализовать многоуровневый фильтр для listbox? Хотя бы в каком направлении мне двигаться Спасибо |
|
|
|
09.04.2013 22:21:50
Что подразумевается под многоуровневым?
|
|
|
|
09.04.2013 22:27:55
Имеется ввиду, что я смогу отфильтровать данные в листбоксе по нескольким критериям.
Из примера keny, я бы хотел выбрать артикул 9 и из выбранного выбрать только наименование 28, а потом из наименования 28 выбрать конкретный код. |
|
|
|
09.04.2013 23:25:54
При варианте с радиокнопками так не получится - нужен множественный выбор, а для этого они не годятся. Выручат ЧекБоксы. Но тогда потребуется и три (минимум) поля для ввода критериев. А может Вам будет достаточно расширенного фильтра? )
|
|
|
|
10.04.2013 01:54:41
Да Юрий, я согласен с вами на счет optionbuttons.
Вообще я использовал Combobox, я подвесил файл. Просто я подумывал реализовать через combobox т.к. Departments и Locations могут периодически меняться в связи с добавлением новых записей, а так их значения подтягиваются непосредственно из регистра, мне показалось это проще :| А на счет расширенного фильтра в UserForm я пока такого не знаю ![]() |
||||
|
|
|||
Читают тему