Как заставить макрос работать сразу после заполнения текстового поля в моей пользовательской форме? - PullRequest
0 голосов
/ 11 июня 2019

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

Критерии фильтрации находятся в одном текстовом поле (единственное место для вводаданные в этой пользовательской форме).

Я использую сканер штрих-кода для заполнения текстового поля, и затем этот критерий будет использоваться для фильтрации данных в моей таблице.

Я хотел бы, чтобы данные былифильтруется сразу после заполнения текстового поля со сканера штрих-кода (без необходимости нажимать командную кнопку для фильтрации данных).

Я довольно новичок в программировании в целом, есть идеи?Спасибо!

Я создал пользовательскую форму, которая будет фильтровать эти данные, но только после того, как я нажму командную кнопку, чтобы отфильтровать их.Я хотел бы, чтобы это происходило автоматически после того, как сканер штрих-кода вводит данные.

ОБНОВЛЕНИЕ Я переместил код в подпункт ниже и избавился от командной кнопки.Теперь я хотел бы иметь возможность автоматически скрывать пользовательскую форму после фильтрации данных.Когда я добавляю Userform1.Hide, все фильтры удаляются из моей таблицы, но когда я закомментирую эту строку, она работает нормально (но пользовательская форма остается скрытой).Любые идеи?

Параметр Явный Частный Sub Sub TextBox1_Change ()

ActiveSheet.ListObjects ("Table1"). Range.AutoFilter Поле: = 2, Criteria1: = TextBox1.Value

Userform1.Hide

End Sub

1 Ответ

0 голосов
/ 11 июня 2019

Процедура Private Sub TextBox1_Change() называется всякий раз, когда вносится изменение в TextBox1, то есть для каждого введенного символа.Итак, поместите свой код там.При каждом вызове проверяйте, что текстовое поле получило полный и действительный фильтр.Если нет, просто вернитесь.В противном случае запустите фильтр (и очистите текстовое поле, чтобы можно было получить другой фильтр).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...