2015-12-30 6 views
0

У меня есть форма с двумя полямиMicrosoft Access Нажмите Enter, чтобы добавить запись

  1. Продавец - (список выпадающим, который должен быть выбран вручную)
  2. Order ID - Заказать идентификаторами, которые я использовал бы сканер штрих-кода для добавления.

Поскольку мне нужно выбрать продавца один раз и добавить много идентификаторов заказа, я установил «Tab Stop» в поле «Нет» для поля продавца, чтобы он не заносился туда снова и снова.

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

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

+0

Пожалуйста, иметь в виду, что так код помогает форум, а не написание приложений форум. – Gustav

+1

эй, я на самом деле не разрабатываю приложение, это просто форма внутри Ms-Access, я просто хочу найти код/​​способ, который позволит отправить форму при каждом нажатии на ввод. –

ответ

2

Поскольку сканер делает Enter, вы могли бы попробовать что-то вроде:

Private Sub OrderId_AfterUpdate() 
    Me.Dirty = False     'save record 
    DoCmd.GoToRecord , , acNewRec  'goto new record 
End Sub 
+0

С новым годом, это дало мне ошибку - выражение On Change, введенное в качестве значения свойства события, вызвало следующую ошибку: Overflow. * Выражение не может указывать на имя макроса, имя определенной пользователем функции или [Процедура события]. * Возможно, произошла ошибка в оценке функции, события или макроса. –

+0

Это была проблема, связанная с отправкой, и разрешила ее, и после этого ваш код работал как шарм. –

0

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

Private sub Form_keypress(keyascii as integer) 

If keyascii = 13 then 
    'Run your SQL that inserts data into  'table 
End if 

End Sub 

Под вкладкой событий, не забудьте установить свойство Key Preview на «yes», если вы этого не сделаете, решение выше не будет работать.

+0

Это приведет к событию, когда в форме будет нажата кнопка «Enter». Я не думаю, что это идеальный вариант. –

Смежные вопросы