Приветствую, уважаемые. Подсобите с решением задачи. Нужно по значению в текстбоксе фильтровать данные в листбоксе. Как сделать по начальным буквам более или менее понятно, а вот как быть если нужно организовать поиск по содержанию? Например: В текстбок пишу Пров В листобоксе должны отобразится все строчки, которые содержат Пров Очищаю текстбокс , обнуляется листбокс
Приветствую, уважаемые. Подсобите с решением задачи. Нужно по значению в текстбоксе фильтровать данные в листбоксе. Как сделать по начальным буквам более или менее понятно, а вот как быть если нужно организовать поиск по содержанию? Например: В текстбок пишу Пров В листобоксе должны отобразится все строчки, которые содержат Пров Очищаю текстбокс , обнуляется листбоксStormy
nilem, Здравствуйте, Николай. Спасибо за разъяснения.
Скачал тут пример, но хоть убей не могу найти с какой темы. В принципе все подходит. с комбобоксом проблем нет. Возможно ли его переделать под текстбокс и листбокс?
[vba]
Код
Private Sub cmbStrat_Change() Dim a cmbStrat.List = [ComboData].Value a = Application.Transpose(cmbStrat.List) If cmbStrat.Value = "" Then cmbStrat.List = [ComboData].Value Else a = Filter(a, cmbStrat.Value, True, vbTextCompare) cmbStrat.List = a End If End Sub
Private Sub cmbStrat_GotFocus() cmbStrat.List = [ComboData].Value End Sub
[/vba]
[vba]
Код
Private Sub txtStrat_Change() Dim a lstStrat.List = [ComboData].Value a = Application.Transpose(lstStrat.List) If txtStrat.Value = "" Then lstStrat.List = [ComboData].Value Else a = Filter(a, lstStrat.Value, True, vbTextCompare) lstStrat.List = a End If End Sub
Private Sub txtStrat_GotFocus() lstStrat.List = [ComboData].Value End Sub
nilem, Здравствуйте, Николай. Спасибо за разъяснения.
Скачал тут пример, но хоть убей не могу найти с какой темы. В принципе все подходит. с комбобоксом проблем нет. Возможно ли его переделать под текстбокс и листбокс?
[vba]
Код
Private Sub cmbStrat_Change() Dim a cmbStrat.List = [ComboData].Value a = Application.Transpose(cmbStrat.List) If cmbStrat.Value = "" Then cmbStrat.List = [ComboData].Value Else a = Filter(a, cmbStrat.Value, True, vbTextCompare) cmbStrat.List = a End If End Sub
Private Sub cmbStrat_GotFocus() cmbStrat.List = [ComboData].Value End Sub
[/vba]
[vba]
Код
Private Sub txtStrat_Change() Dim a lstStrat.List = [ComboData].Value a = Application.Transpose(lstStrat.List) If txtStrat.Value = "" Then lstStrat.List = [ComboData].Value Else a = Filter(a, lstStrat.Value, True, vbTextCompare) lstStrat.List = a End If End Sub
Private Sub txtStrat_GotFocus() lstStrat.List = [ComboData].Value End Sub
С фильтром частично разобрался, но теперь беда в другом. При вводе букв/слов , которых нет в списке выдает ошибку. Как ее отловить , к примеру при вводе zzzzz не фильтровать или вывести msgbox ?
UPD: Разобрался
С фильтром частично разобрался, но теперь беда в другом. При вводе букв/слов , которых нет в списке выдает ошибку. Как ее отловить , к примеру при вводе zzzzz не фильтровать или вывести msgbox ?