Я работаю над приложением MS Access для хранения данных клиентов. Все данные хранятся в БД SQL. Одно из полей ввода используется для хранения идентификационного номера карты с магнитной полосой. Вместо того, чтобы набирать длинный номер, я купил USB магнитный сканер. Сканер работает, но после того, как я сканирую карту, он выдает мне номер карты с нежелательным символом в начале и в конце строки, например #1234567890123456789012345-1-1-1#. Как я могу избавиться от дополнительного символа, оставив только 25 символов между 2-м и 26-м символом.
Подстрока при вставке данных с магнитного сканера в поле ввода MS Access
Ответы (1)
Вы можете использовать
strData = Mid(strData,2,25)
после чтения данных.
Также я бы рекомендовал создать процедуру распознавания ввода со сканера. Используйте событие формы Form_KeyPress
и начните буферизацию символов, когда первым полученным символом будет #
, пока вы не получите последний символ. После этого вы можете установить фокус на поле ввода сканера и отображать только необходимые символы из полученной строки. В этом случае вы можете сканировать данные независимо от текущего фокуса и показывать пользователю только значащие символы. Могу привести пример для обычного лазерного сканера с сервисными кодами AIM (3 служебных символа в начале)
person
Sergey S.
schedule
23.01.2018